c语言程序填空题
C语言期末考试复习资料-程序填空部分试题及答案
【程序填空】-——-—----——--—————--—-—-——-—-——----—--—-—-——------———-——- 功能:下面的程序是求1!+3!+5!+……+n!的和。
--——------—-—--——-—----—---——----————-—-———-—-—-—-----—*/#include <stdio.h〉main(){long int f,s;int i,j,n;/***********SPACE***********/【?】;scanf("%d”,&n);/***********SPACE***********/for(i=1;i<=n;【?】){f=1;/***********SPACE***********/for(j=1; 【?】;j++)/***********SPACE***********/【?】;s=s+f;}printf(”n=%d,s=%ld\n",n,s);}/*-—--——-——-—-——---—-----—--——--—-—--—----—---—-—-—--——-—【程序填空】----—---—---—--—-—————-—————-——---—--—----————-—--—--——-—功能:以每行5个数来输出300以内能被7或17整除的偶数,并求出其和。
--———-—--——-—--——-——--—--———--—————-——--—--—-———--—--——*/ #include <stdio.h〉#include <conio.h〉main(){int i,n,sum;sum=0;/***********SPACE***********/【?】;/***********SPACE***********/for(i=1; 【?】;i++)/***********SPACE***********/if(【?】)if(i%2==0){sum=sum+i;n++;printf("%6d",i);/***********SPACE***********/if(【?】)printf(”\n");}printf(”\ntotal=%d”,sum);}/*———-—----———----—----—---———————--—-————----——----—---—【程序填空】——---—————-———-—————---—-—----—--——-—--—--——-—--——————-——功能:求100-999之间的水仙花数说明:水仙花数是指一个三位数的各位数字的立方和是这个数本身。
C语言程序填空题加答案
1、 下面一段程序执行后,变量s的值等于【 22 】. int a,s=0; for(a=10;a>0;a-=3)s+=a; 2、 下面一段程序的功能是计算1到100之间的整数之 和,并将结果保存到变量s中. int a=101,s=0; --a 或 a-- 或 a=a-1 while(【 】,a>0 )s=s+a; 3、 下面一段程序执行后,变量s的值等于【 10 】. int a=10,s=0; do{s=s+a,a++;}while(a<1); 4、 下面一段程序执行后,变量s的值等于【 11 】. int a,s=0; for(a=1;a<11;a++); s=s+a;
16、 若所用变量都已正确定义,以下程序段的输出结果 OK 】. 【 for(i=1;i<=5;i++); printf("OK\n"); 17、 设有以下程序段,执行程序后s的值是【 1 】. int x=0,s=0; while(!(x!=0)) s+=++x; printf("%d",s); 18、 设有以下程序段,执行程序后a的值是【 1 】. int x=0,a=0; while(!x!=0) a+=++x; printf("%d",a); break 19、 【 】语句强行结束循环,转向执行循 环语句的下一条语句.
17、 将以下语句用条件运算符改写为【max=a>b?a:b 】. if(a>b)max=a; else max=b; 18、 当a=3,b=2,c=1;时,执行以下程序段后,c的值为 【 2 】. if(a>b) a=b; if(b>c) b=c; else c=b; c=a; 19、 当a=3,b=2,c=1;时,执行以下程序段后,b的值为 【 1 】. if(a>b) a=b; if(b>c) b=c; else c=b; c=a;
c语言程序填空题
16功能:输入字符串,再输入一个字符,将字符串中与输入字符相
同的字符删除。
【1】a[i] != '\0'或a[i]或a[i]!=NULL【2】a[j]='\0'或a[j]=NULL或a[j]=0
【3】cc=getchar()或scanf("%c",&cc)【4】fun(a,cc)
12功能:删除字符串中的指定字符,字符串和要删除的字符均由键盘
输入。
【1】str【2】str[i]!='\0'或str[i]!=NULL或str[i]!=0或str[i]
【3】str[k]=str[i]或*(str+k)=*(str+i)或str[k]=*(str+i)或*(str+k)=str[i]
39功能:百马百担问题:有100匹马,驮100担货,大马驮三担,中
马驮2担,两匹小马驮一担,求大、中、小马各多少匹?
【1】3【2】2【3】hm【4】hl
40功能:找出数组中最大值和此元素的下标,数组元素的值由键盘
输入。
【1】a + i或&a[i]【2】p-a或-a+p【3】>【4】*s
41功能:输出两个整数中大的那个数,两个整数由键盘输入。
24功能:有n个整数,使其前面各数顺序向后移m个位置,最后m个数
变成最前面的m个数
【1】number,n,m【2】array,n,m【3】array+n-1或array + n -1【4】p-1或p -1
25功能:用冒泡法对数组a进行由小到大的排序。
C语言程序填空题-20分
二、程序填空题(每空2分,共20分)1.下列程序是求100之内的能被7整除的自然数之和。
请在横线处填入适当的语句,将程序补充完整。
#include <iostream.h>void main( ){int sum;_(1) _;for(int i=1;__(2) _; i++)if(_(3) _)sum+=i;cout<<sum<<endl;}答案:_sum=0_ i<=100_ i%7==0__2 下面程序的功能是计算x n。
请在横线处填入适当的语句,将程序补充完整。
#include <iostream.h>void main( ){int n,x;cin>>x>>n;double y=1;for(int i=1;__(1) _; i++)_(2) _;cout<<y<<endl;}答案:i<n_ y=x*i3 下面程序是输出100内能被3整除且个位数是6的所有整数。
请在横线处填入适当的语句,将程序补充完整。
#include <iostream.h>void main(){int i,j;for(i=0; (1) ;i++){j=i*10+6;if( (2) )continue;elsecout<<j<<endl;}}答案:i<10 j%3!=04.下面程序运行后输出的结果为:** * ** * * * ** * * * * * *请在横线处填入适当的语句,将程序补充完整。
#include <iostream.h>#include<iomanip.h>void main(){int i,j,k ;for(i=1 ;i<=4 ;i++){for(j=1;j<20-3*i; (1) ) cout<<”“;for(k=1; (2) ; k++)cout<<setw(3)<<”*”;(3) ;} }答案:j++ k<2*i-1 cout<<endl5.下面程序运行后输出的结果为:1121123211234321请在横线处填入适当的语句,将程序补充完整。
(完整word版)c语言填空题题库
二, 填空题( 10 道小题,共20 分)1、一个C 源程序中至少应包含一个[main] 函数。
2、a是整型变量,则执行表达式a=25/3%3后a的值为。
[2]3、i nt m=5,y=2; 则表达式y+=y- =m*=y 的值为。
[-16]4、执行下列语句: int a=1, b=2; a=a+b; b=a-b; a=a-b; printf("%d , %d \n", a,b ); 的输出结果分别是[2,1]5、条件表达式的格式为表达式1?表达式2:表达式3,若表达式2和表达式3的类型不同,此时条件表达式的值的类型为二者中较[高]的类型6、当运行以下程序时,从键盘键入right?<CR>(<CR> 代表回车),则下面程序的运行结果是。
#include<stdio.h>main( ){ char c;while((c=getchar())! ='?') putchar(++c)}[sjhiu?]7、C语言中的数组必须先[定义],然后使用。
8、如果需要从被调用函数返回一个函数值,被调用函数必须包含【return 】语句。
9、已知:float f1=3.2,f2,*pf仁&f1;f2=f1 ,则*f2 的值为。
[3.2]10 、以下程序void fun(char *a, char *b){ a=b; (*a)++; } main (){ char c1="A", c2="a", *p1, *p2;p1=&c1; p2=&c2; fun(p1,p2);printf( “ &cn&”c ,c1,c2);}运行后的输出结果是。
[&c&c]11、字符串常量“ 123 ”在内存中的字节数是。
[8 字节]12、已有定义:int x=3 ; 则表达式:x=x+1.78 的值是。
C语言程序填空题库
程序填空一、程序填空共129题(共计1290分)第1题(10.0分)题号:473/*------------------------------------------------------- 【程序填空】---------------------------------------------------------功能:输出1到100之间每位数的乘积大于每位数的和的数。
例如:数字26,数位上数字的乘积12大于数字之和8。
-------------------------------------------------------*/ #include <stdio.h>main(){int n,k=1,s=0,m;for(n=1;n<=100;n++){k=1;s=0;/***********SPACE***********/【?】 ;/***********SPACE***********/while( 【?】 ){k*=m%10;s+=m%10;/***********SPACE***********/【?】;}if(k>s)printf("%d ",n);}}答案:=======(答案1)=======m=n=======(答案2)=======m>00<m=======(答案3)=======m=m/10=========或=========m/=10第2题(10.0分)题号:447/*------------------------------------------------------- 【程序填空】---------------------------------------------------------功能:已知一个数列,它的头两项分别是0和1,从第三项开始以后的每项都是其前两项之和。
编程打印此数,直到某项的值超过200为止。
C语言程序设计选择填空习题及答案
习题一一、选择题1.C程序的基本单位是(A)。
A.函数B.文件C.语句D.字符2.C程序中的变量(B)。
A.不用说明B.先说明后引用C.先引用后说明D.引用和说明顺序无关3.变量的说明在(B)。
A.执行语句之后B.执行语句之前C.执行语句当中D.位置无关4.C语言是一种(C)。
A.机器语言B.符号语言C.高级语言D.面向对象的语言二、填空题1.一个C程序总是从主函数开始执行。
2.结构化程序由顺序、选择、循环三种基本结构构成。
3.一个C程序只有一个名为main的主函数。
4.C程序中的每个语句以分号结束。
5.C程序中,函数由函数首部和函数体组成。
6.每个基本结构有一个入口和一个出口,没有死循环和死语句。
7.算法是计算机解决问题所依据的步骤。
习题二一、选择题1.下列数据中属于字符串常量的是( B)。
A.ABC B."ABC" C.'abc' D.'A'2.在计算机内存中,'\n'占用的字节数是( C)。
A.4 B.3 C.1 D.23.字符串"ABC"在内存中占用的字节数是( D)。
A.6 B.8 C.3 D.44.在C语言中,合法的长整型常数是( B)。
A.568701400 B.0L C.0.03546287 D.2.654e115.char型常量在内存中存放的是( A)。
A.ASCII代码值B.BCD代码值C.十进制代码值D.内码值6.下列各项中正确的标识符是( D)。
A.?bb B.a=8 C. b.βD.b_47.下列不正确的转义字符是( D)。
A.\\ B.\ 0 C.\" D.0x48.设整型变量a、b的值均为5,则表达式(m=n=a++)/(n=b-2)的值为( B)。
A.0 B.1 C.2 D.39.设a的值为5,执行下列语句后,b的值不为2的是( C)。
A.b=a/2 B.b=6-(--a) C.b=a%2 D.b=(float)a/210.执行语句x=(a=3,b=a--)后,x、a、b的值依次是( C)。
c语言程序设计填空题15条
c语言程序设计填空题15条
1、以下程序的功能是利用函数求100-200间素数(质数)的个数,请在下划线处填上正确的语句,使程序能正确运行。
2、C中的转义符“\r”表示:。
3、表达式 3 | 2 的值是。
4、第i天的桃等于(第i+1天的剩的桃+
5、*2,因此有:f(i)=(f(i+
6、∗2,完毕条件是f(n)=1。
7、定义一个构造变量,共三个成员分别是字符型、整形和浮点型,则该构造体变量所占内存长度为个字节。
8、71828的宏命令是。
9、C中按位与运算符是、按位异或运算符是、按位或运算符是。
10、若a=5,经a-=3;后a=。
11、小数局部按指定位数输出,编译器会进展四舍五入处理,假如和的结果是-0.04,输出会是-0.0,而假如肯定值结果是0.05及以上,四舍五入是0.1,有了上面的条件就可以保证结果不会消失-0.0的状况了。
12、函数形参和调用的实参是数组名时,参数按方式进展传递。
13、C语言规定标识符只能由字母、和3种字符组成,且第一个字符必需为字母或。
14、输出格式:在一行中根据(x, y)的格式输出和向量,坐标输出小数点后一位(留意不能输出−0.0)。
15、已知ch=”a”,则表达式【(ch>=”A ” && ch<=”Z”)? (ch+
16、以下程序的功能是输出杨辉三角形前10行,请在下划线处填上
正确的内容,使程序能正确运行。
17、表达式21 / 4 的值为。
C语言程序填空练习题(一)
将下面的程序补充完整,以完成指定的功能。
1.输入10个整数,找出最大数。
#include <iostream>using namespace std;int main(){int k,x,max;cin>>x;max=______; // (1)for(k=2; k<=___ ; k++) { // (2)cin>>x;if (_______) max=x; // (3)}cout<<“Max=“<<max<<endl;return 0;}1.(1)x (2)10 (3)x>max2.猴子吃桃问题:猴子摘下若干个桃子,第一天吃了桃子的一半多一个,以后每天吃了前一天剩下的一半多一个,到第十天吃以前发现只剩下一个桃子,问猴子共摘了几个桃子?#include <iostream>using namespace std;int main(){int day,x1,x2;day=9;x2=1;while(day>0){x1=2*(x2+1);_____________ ; // (1)_____________ ; // (2)}cout<<"Total="<<x1<<endl;return 0;}2.(1)x2=x1 (2)day—(或day=day-1)3.求符合下列条件的四位数中最大的一个数。
条件为:它的千位数字与十位数字之和等于百位数字与个位数字之积,例如,3136,3+3=1*6 ,故3136是符合条件的一个四位数。
#include <iostream>using namespace std;int main(){int i,a,b,c,d;for( i=9999; i>=1000; i--){a= _____________; // (1)b=(i-a*1000)/100;c=(i-a*1000-b*100)/10;d=i%10;if ( _____________ ) // (2){cout<<i<<endl;_____________; // (3)}}}3.(1)i/1000 (2)a+c==b*d (3)break4.求所有的水仙花数。
c语言程序填空练习题
C语言程序填空题1.阅读以下程序并填空。
以下程序的功能是:输出三位正整数中能被13整除的数#include <stdio.h>main(){ int n;for( n=100 ; n<=999 ;n++) if(n%13!=0) continue ; else printf("%d\n",n);} 2.阅读以下程序并填空。
以下程序的功能是:输出100以内能被3整除且个位数为6的所有整数 #include <stdio.h>main(){ int i,j;for(i=0; i<=9 ;i++){ j= i*10+6 ;if(j%3!=0) continue;else printf("%d\n",j);} }3.阅读以下程序并填空。
以下的程序功能是:求101至999之间所有能被13整除的整数之和和个数 #include <stdio.h>main(){ int i,cnt;float sum=0;i=101; cnt=0;while( i<=999 ){ if( i%13==0 ){ sum+=i; cnt++; } i++ ; )printf("sum=%f,cnt=%d\n”,sum,cnt);}4.阅读以下程序并填空。
该程序的功能是:用递归的方法求菲波那契数列2,2,4,6,10,16, 26,42,68,110,……的第10项 #include <stdio.h>long fib(int n){ if(n>= 3 )return fib(n-1)+fib(n-2);elsereturn 2 ; }main(){ printf("%ld\n”,fib(10)); }5.阅读以下程序并填空。
该程序的功能是:用递归法求:1 + 2 + 3 + + n#include <stdio.h> long Sum(int n) { if(n> 1 )return n+Sum(n-1); else return 1 ;)6.阅读以下程序并填空。
大学C语言程序设计(填空题)
C 语言程序设计习题-填空题
若 s 是 int 型变量,则表达式 s%2+(s+1)%2 的值为______。 习题 11-参考答案 1 习题 12(填空题)[知识点:数据类型] 若 a 是 int 型变量,则表达式(a=4*5,a*2),a+6 的值为______。 习题 12-参考答案 26 习题 13(填空题)[知识点:数据类型] 若 x 和 a 均是整型变量,则计算表达式 x=(a=4,6*2)后的 x 值为______。 习题 13-参考答案 12 习题 14(填空题)[知识点:数据类型] 若 x 和 a 均是整型变量,则计算表达式 x=a=4,6*2)后的 x 的值为______。 习题 14-参考答案 4 习题 15(填空题)[知识点:数据类型] 若 a、b 和 c 均是 int 型变量,则计算表达式 a=(b=4)+(c=2)后,a、b、c 的值分别为______。 习题 15-参考答案 6,4,2 习题 16(填空题)[知识点:数据类型] 若 a 是 int 型变量,且 a 的初值为 6,则计算表达式 a+=a-=a*a 后 a 的值为______。 习题 16-参考答案 -60 习题 17(填空题)[知识点:数据类型] 若 a 是 int 型变量,则计算表达式 a=25/3%3 后 a 的值为______。 习题 17-参考答案 2 习题 18(填空题)[知识点:数据类型] 若 x 和 n 均是 int 型变量,且 x 和 n 的初值均为 5,则计算表达式 x+=n++后 x、n 的值分别为______。 习题 18-参考答案 10,6 习题 19(填空题)[知识点:数据类型] 若有定义:int b=7;float a=2.5,c=4.7;则表达式 a+(int)(b/3*(int)(a+c)/2)%4 的值为______。 习题 19-参考答案 5 .5 习题 20(填空题)[知识点:数据类型] 若有定义:int a=2,b=3;float x=3.5,y=2.5;则表达式(float)(a+b)/2+(int)x%(int)y 的值为______。 习题 20-参考答案 3 .5 习题 21(填空题)[知识点:数据类型] 若有定义:char c='\010';则变量 c 中包含的字符个数为______。 习题 21-参考答案 1 习题 22(填空题)[知识点:数据类型] 若有定义:int x=3,y=2;float a=2.5,b=3.5;则表达式(x+y)%2+(int)a/(int)b 的值为______。 2 / 25
c语言程序填空含答案
c语言程序填空含答案在学习C语言的过程中,掌握程序填空的技巧是非常关键的。
程序填空题目可以帮助我们加深对C语言语法和逻辑的理解,并锻炼我们的编程思维能力。
在本文中,将为大家提供一些C语言程序填空题及其答案,希望对大家的学习有所帮助。
1. 下面是一个求最大公约数的C语言程序,请填写缺失的代码。
```c#include <stdio.h>int gcd(int a, int b) {if (b == 0) {return a;} else {return gcd(b, a % b);}}int main() {int num1, num2;printf("请输入两个正整数:");scanf("%d%d", &num1, &num2);printf("最大公约数为:%d", gcd(num1, num2)); return 0;}```答案:```c#include <stdio.h>int gcd(int a, int b) {if (b == 0) {return a;} else {return gcd(b, a % b);}}int main() {int num1, num2;printf("请输入两个正整数:");scanf("%d%d", &num1, &num2);printf("最大公约数为:%d", gcd(num1, num2));return 0;}```2. 下面是一个计算平均数的C语言程序,请填写缺失的代码。
```c#include <stdio.h>double average(int arr[], int length) {int sum = 0;for (int i = 0; i < length; i++) {sum += arr[i];}return sum / length;}int main() {int numbers[] = {5, 10, 15, 20, 25};int length = sizeof(numbers) / sizeof(numbers[0]);printf("平均数为:%.2f", average(numbers, length));return 0;}答案:```c#include <stdio.h>double average(int arr[], int length) {int sum = 0;for (int i = 0; i < length; i++) {sum += arr[i];}return (double)sum / length;}int main() {int numbers[] = {5, 10, 15, 20, 25};int length = sizeof(numbers) / sizeof(numbers[0]);printf("平均数为:%.2f", average(numbers, length));return 0;}```3. 下面是一个字符串反转的C语言程序,请填写缺失的代码。
大学计算机C语言程序设计(填空题)
一、填空共219题第1题题号:422设有以下结构类型说明和变量定义,则变量a在内存所占字节数是【1】.Structstud{charnum[6];ints[4];doubleave;}a,*p;答案:1).22第2题题号:533设x和y均为int型变量,则以下for循环中的scanf语句最多可执行的次数是【1】. for(x=0,y=0;y!=123&&x<3;x++)scanf("%d",&y);答案:1).3第3题题号:496静态变量和外部变量的初始化是在【1】阶段完成的,而自动变量的赋值是在【2】时进行的.答案:1).编译2).函数调用第4题题号:96已知a=13,b=6,a&b的十进制数值为【1】.答案:1).4第5题题号:398程序段intk=10;while(k=0)k=k-1循环体语句执行【1】次.答案:1).0第6题题号:651设w=5;w+=-2;则w的值为【1】.答案:1).3第7题题号:258下面程序段的输出结果是【1】.inta=12;a=a&0377;pritnf("%d\n",a);答案:1).12第8题题号:457设a,b,c,t为整型变量,初值为a=3,b=4,c=5,执行完语句t=!(a+b)+c-1&&b+c/2后,t的值是【1】.答案:1).1第9题题号:402设a取二进制数00101101,若想通过a^b运算使a的高4位取反,低4位不变,则b的二进制数是【1】.答案:1).11110000第10题题号:311若所用变量均已正确定义,则执行下面程序段后的值是【1】.for(i=0;i<2;i++)printf("YES");printf("\n");答案:1).YESYES第11题题号:663intx=2;z=++x+1;则z的值为【1】.答案:1).4第12题题号:1442设有intx=11,则表达式(x++*1/3)的值是【1】。
c语言程序填空题库及详解答案
c语言程序填空题库及详解答案在C语言的学习过程中,程序填空题是一种常见的练习方式,它可以帮助学生加深对C语言语法和逻辑的理解。
下面是一个C语言程序填空题库的示例,包括题目和相应的详解答案。
题目一:计算圆的面积```c#include <stdio.h>#define PI 3.14159int main() {double radius, area;printf("请输入圆的半径:");scanf("%lf", &radius);area = PI * radius * radius;printf("圆的面积是:%.2f\n", area);return 0;}```题目二:判断闰年```c#include <stdio.h>int main() {int year;printf("请输入一个年份:");scanf("%d", &year);if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {printf("%d 是闰年。
\n", year);} else {printf("%d 不是闰年。
\n", year);}return 0;}```题目三:求最大公约数```c#include <stdio.h>int gcd(int a, int b) {while (b != 0) {int temp = b;b = a % b;a = temp;}return a;}int main() {int num1, num2;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);printf("最大公约数是:%d\n", gcd(num1, num2)); return 0;}```题目四:字符串反转```c#include <stdio.h>#include <string.h>void reverse(char str[]) {int len = strlen(str);for (int i = 0; i < len / 2; i++) {char temp = str[i];str[i] = str[len - i - 1];str[len - i - 1] = temp;}}int main() {char str[100];printf("请输入一个字符串:");scanf("%s", str);reverse(str);printf("反转后的字符串是:%s\n", str);return 0;}```题目五:计算阶乘```c#include <stdio.h>int factorial(int n) {if (n <= 1) {return 1;} else {return n * factorial(n - 1);}}int main() {int num;printf("请输入一个正整数:");scanf("%d", &num);printf("%d 的阶乘是:%d\n", num, factorial(num));return 0;}```以上题目涵盖了C语言中的一些基础概念,如循环、条件判断、函数定义和数组操作。
C语言程序设计题(程序填空)与详细解析
C 语言程序设计题(程序填空)与详细解析请勿改动主程序main 及其他给定函数中的任何内容,仅在指定函数内的花括号中填入你编写的若干语句。
1.请编一个函数int day(int k,int m,int n),其功能是:返回小蚕需要多少天才能爬到树顶(树高k 厘米,小蚕每天白天向上爬m 厘米,每天晚上因睡觉向下滑n 厘米,爬到顶后不再下滑)(n <m <k )。
例如,若分别 输入253、71、29给 k 、m 、n ,则输出结果为:6。
include <conio.h>#include <stdio.h>#include <windows.h>int day( int k, int m, int n ) { }main(){ int k, m, n; system("cls");printf("\nPlease enter 3 numbers: ");scanf("%d %d %d", &k, &m, &n ); printf( "\nFor %d days, worm will be at the top.",day(k,m,n));}解析:在参考程序中用一个for 循环来统计天数,如果小蚕某一天白天爬到了树顶,则它就不会再往下滑。
因此我们应先判断小蚕是否是在白天爬到树顶,如果已经爬到了树顶就直接返回天数。
2.请编写函数fun ,其功能是:计算并输出下列多项式的值:S = 1 + 1/1! + 1/2! + 1/3! + 1/4! + ... + 1/n! 例如,在主函数中从键盘给n 输入15则输出为:s=2.718282。
注意:要求n 的值大于1但不大于100。
#include <stdio.h> double fun(int n) { } main(){ int n; double s; printf("Input n: "); scanf("%d",&n); s=fun(n);printf("s=%f\n",s); }解析:本题是求多项式的和,从中可以找出规律,各项式的分子为一阶乘数,可以通过循环先求出n!,然后求其倒数,将此值赋给一个变量,然后再求此变量的累加值。
C语言考试填空题(全部答案)
计算机程序设计基础(C语言)程序填空练习题程序填空:阅读程序。
在划线处填写适当的表达式或语句,使程序完整并符合题目要求1.输入一个字符,判断该字符是数字、字母、空格还是其他字符。
main( ) 参考答案:{ char ch;ch=getchar();if( ) ch>='a'&&ch<='z'|| ch>='A'&&ch<='Z' printf("It is an English character\n");else if( ) ch>='0'&&ch<='9'printf("It is a digit character\n");else if( ) ch==' 'printf("It is a space character\n");elseprintf("It is other character\n"); }2.10个学生成绩按交换法排序。
main(){ float score[10], temp1;int i, j;printf("Please enter score:\n");for (i=0; i<10; i++)scanf("%f",&score[i]);for (i=0; i<9; i++)for (j=i+1; j<10; j++)if (score[j] > score[i]){ temp1=score[j];score[j]=score[i];score[i]=temp1;}printf("Sorted results:\n");for (i=0; i<10; i++)printf("%4.0f\n", score[i]); }11.排序函数:用交换法按成绩由高到低对学生成绩重新排序void Sort(float score[ ],int n){ int i, j;float temp1;for (i=0; i<n-1; i++){ for (j=i+1; j<n; j++)if ( ) score[j] > score[i]{ temp1 = score[j];; score[j]=score[i];score[i] = temp1;}}}自定义一函数求n!, 编写程序输入n,输出n!.#include<stdio.h>long jc(int n){ int i=1;long p=1;while (i <= n){ p=p*i;i++; }} return p;main(){ int n;printf("Please enter n:");scanf("%d", &n);printf("%d! = %ld\n", n, ); jc(n)}4.下列程序的功能是从输入的整数中,统计大于零的整数个数和小于零的整数个数。
c语言程序填空题
程序填空题1.下述程序是一个选择排序程序,请填完整空缺部分。
Void select _sort (int p [ ], int n ){ int i, j, k, temp;for ( i =0 ;i<n-1; i ++ ){ k = i;for ( j=i+1; j<n ; j++)if ( p[j]<p[k]) k=j;if (k!=i) { temp= p[k]; p[k]=p[i];p[i]=temp;} }}main(){ int i,a[20];for (i =0; i<20; i++) scanf (“%d”,&a[i]); select_sort(a,20);for ( i = 0;i<20; i++)printf (“%d\t”,a*i+;printf (“\n”);}2.下面程序的功能是:计算1到10之间的奇数之和及偶数之和,请填空。
# include <stdio.h>main(){ int a, b, c , i;a = c = 0 ;for(i=0;i<=10;i+=2){ a + = i ;b=i+1;c += b ;}printf ( “偶数之和= %d \n “, a ) ;printf ( “奇数之和= %d \n “, c –11 );}3.下面程序的功能是:输出100 以内能被3 整除且个位数为6 的所有整数,请填空:main(){ int i , j ;for ( i = 0 ;i<10; i + + ){ j = i * 10 + 6 ;if ( j%3!=0) continue ;printf ( “ %d” , j ) ;}}4.程序读入20个整数,统计非负数的个数,并计算非负数之和。
#include “stdio.h”main(){ int I,a[20],s,count;____s=count=0____;for(I=0;I<20;I++)scanf(“%d”,_&a[i]__);for(I=0;I<20;I++){if(a[I]<0)continue;s+=a[I];count++}printf(“s=%d\t count=%d\n”,s,count);}5.下面的程序用以分别求出数组两条对角线上的各元素之和。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
程序填空题
1.下述程序是一个选择排序程序,请填完整空缺部分。
Void select _sort (int p [ ], int n )
{ int i, j, k, temp;
for ( i =0 ;i<n-1; i ++ )
{ k = i;
for ( j=i+1; j<n ; j++)
if ( p[j]<p[k]) k=j;
if (k!=i) { temp= p[k]; p[k]=p[i];p[i]=temp;}
}
}
main()
{ int i,a[20];
for (i =0; i<20; i++) scanf (“%d”,&a[i]);
select_sort(a,20);
for ( i = 0;i<20; i++)
printf (“%d\t”,a*i+;printf (“\n”);
}
2.下面程序的功能是:计算1到10之间的奇数之和及偶数之和,请填空。
# include <stdio.h>
main()
{ int a, b, c , i;
a = c = 0 ;
for(i=0;i<=10;i+=2)
{ a + = i ;
b=i+1;
c += b ;
}
printf ( “偶数之和= %d \n “, a ) ;
printf ( “奇数之和= %d \n “, c –11 );
}
3.下面程序的功能是:输出100 以内能被3 整除且个位数为6 的所有整数,请填空:
main()
{ int i , j ;
for ( i = 0 ;i<10; i + + )
{ j = i * 10 + 6 ;
if ( j%3!=0) continue ;
printf ( “ %d” , j ) ;
}
}
4.程序读入20个整数,统计非负数的个数,并计算非负数之和。
#include “stdio.h”
main()
{ int I,a[20],s,count;
____s=count=0____;
for(I=0;I<20;I++)
scanf(“%d”,_&a[i]__);
for(I=0;I<20;I++)
{
if(a[I]<0)
continue;
s+=a[I];
count++
}
printf(“s=%d\t count=%d\n”,s,count);
}
5.下面的程序用以分别求出数组两条对角线上的各元素之和。
#include “stdio.h”
main()
{ int a[3][3]={1,2,3,4,5,6,7,8,9};
int sum1,sum2,k,j;
sum1=sum2=0;
for(k=0;k<3;k++)
sum1+=a[i][i];
for(k=0;k<3;k++)
for(j=2;j>=0;j--)
if(_(i+j)==2________)
sum2+=a[k][j];
printf(“sum1=%d\tsum2=%d\n”,sum1,sum2);
}
6.已知整型数组w中的元素已经由小到大排序,函数fun用以将整数x插入到数组w中,要求插入后的数组元素依然有序。
其中n所指的存储单元中存放着数组元素的个数。
void fun(int *w, int x, int *n)
{
int k,p=0;
w[*n]=x;
while(x>w[p])
__p++____;
for(k=*n;k>p;k--)
w[k]=__w[k-1]__;
___w[p]=x____________;
++*n;
}
7.函数strlen用于确定一个给定字符串str的长度(不包括‘\0’)。
strlen(char *str)
{
int num=0;
while(*str++!=’\0’)
++num;
return(_num___);
}
8.已知第一个学生的年龄为10岁,,第二个学生年比第一个学生的年龄大2岁,……以此类推,以下程序用于计算学生年龄,请补充完整。
#include “stdio.h”
age(int n)
{
int c;
if(n= =1) c=10;
else c=__age(n-1)+2____;
return( c ) ;
}
main()
{
int n=5;
printf(“age:%d\n”,age(n));
}
9.以下是一个求字符串长度的函数的递归算法,请补充完整(不包括‘\0’)
int strlen(char * str)
{
if(*str==’\0’)
return(0);
else
return(__1+strlen(str+1)___);
10. 以下程序将用户从键盘上随机输入的30个学生的学号、姓名、数学成绩、计算机成绩及总分写入数据文件score.txt中,假设30个学生的学号从1~30连续。
输入时不必按学号顺序进行,程序自动按学号顺序将输入的数据写入文件。
请在程序中的空白处填入一条语句或一个表达式。
# include <stdio.h>
FILE *fp;
Main( )
{
struct st
{ int number;
char name[20];
float math;
float computer;
float total;
} student;
int i,j;
if( (fp=fopen(“score.txt”,”w”))==null )
{
printf(“file open error\n”);
exit(1);
}
for(i=0;i<30;i++)
{
scanf(“%d,%20s,%f,%f”,&student.number, ,&student.math,&puter);
student.total=student.math+puter;
j=student.number-1;
fseek(fp,j* sizeof(student),0);
if(fwrite(&student, sizeof(student), 1, fp)!=1)
printf(“write file error\n”);
}
fclose(fp);
}
11.下面的程序用来统计文件中字符的个数,请填空。
#include <stdio.h>
main()
{ FILE *fp;
long num=0;
if(( fp=fopen("fname.dat","r"))==NULL)
{ printf( "Can"t open file! \n"); exit(0);}
while(!feof(fp))
{ fgetc(fp); num++;}
printf("num=%d\n", num);
fclose(fp);
}
12.【程序说明】将从键盘输入的三个整数,按从小到大的顺序输出。
【程序】
#include <stdio.h>
intmain()
{
inta,b,c,*pa=&a,*pb=&b,*pc=&c,*p;
scanf("%d%d%d",pa,pb,pc);
if(*pa>*pb)
{p=pa; pa=pb; pb=p;}
if(*pa>*pc)
{p=pa; pa=pc; pc=p;}
if(*pb>*pc)
{p=pb; pb=pc; pc=p;}
printf("%d <= %d <= %d\n", *pa,*pb,*pc); return 0;
}。