c语言程序填空题完整
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语言程序填空题考试题库
全真c语言程序填空题考试题库Company number:【0089WT-8898YT-W8CCB-BUUT-202108】c语言程序填空!!!这就是考试题库!!!共计131道试题一、程序填空(共131题)Turbo C(共131试题)3)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:已定义一个含有30个元素的数组s,函数fun1的功能是按顺序分别赋予各元素从2开始的偶数,函数fun2则按顺序每五个元素求一个平均值, 并将该值存放在数组w中。
-------------------------------------------------------*/float s[30],w[6];fun1(float s[]){int k,i;for(k=2,i=0;i<30;i++){/***********SPACE***********/________________ ;k+=2;}}fun2(float s[],float w[]){float sum=;int k,i;for(k=0,i=0;i<30;i++){sum+=s[i];/***********SPACE***********/________________;{w[k]=sum/5;/***********SPACE***********/________________ ; k++;}}}main(){int i;fun1(s);/***********SPACE***********/________________;for(i=0;i<30;i++){if(i%5==0) printf("\n");printf("%",s[i]);}printf("\n");for(i=0;i<6;i++)printf("%",w[i]);}答案:【1】 s[i]=k 或 s[i]=(i+1)*2【2】 if( ( i + 1 )%5 == 0 ) 或if( ( i + 1 )/5*5 ==i+1)【3】 sum=0 或 sum=【4】 fun2(s,w)4)./*-------------------------------------------------------【程序填空】---------------------------------------------------------功能:下面的程序是求1!+3!+5!+……+n!的和。
(完整word版)C语言填空题整理
一.(25)116、以下程序运行后的输出结果是__3____。
main(){ int p=30;printf("%d\n",(p/3>0 ? p/10 :p%3));}66、若想通过以下输入语句使a=5.0,b=4,c=3,则输入数据的形式应该是__5.0,4,c=3____。
int b,c; float a;scanf("%f,%d,c=%d",&a,&b,&c)27、请在以下程序第一行的下划线处填写适当内容,使程序能正常运行。
_double max或extern double max_____( double,double);main(){ double x,y;scanf("%1f%1f",&x,&y);printf(%1f\n",max(x,y));}double max(double a,double b){ return(a>b ? a:b);}57、以下程序的输出结果是__246____。
void fun(){static int a = 0;a += 2;printf("%d",a);}main(){int cc;for(cc = 1;cc < 4; cc++) fun();printf("\n");}43、以下程序运行后的输出结果是_81_____。
#define S(x) 4*x*x+1main(){ int i=6,j=8;printf("%d\n",S(i+j));}73、以下函数inverse的功能是使一个字符串按逆序存放。
inverse(str)char str[];{char m;int i,j;for(i=0,j=strlen(str);i<strlen(str)/2;_i++_____,j--) {m=str[i];str[i]=_str[j-1]_____;_str[j-1]=m_____;}}144、以下程序的输出结果_efgh_____。
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请在横线处填入适当的语句,将程序补充完整。
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.下列程序的功能是从输入的整数中,统计大于零的整数个数和小于零的整数个数。
(完整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语言考试填空题
C 语言考试填空题1.一个C 语言程序中至少应该包含一个【】函数。
答案:main 有且只有一个2.a 是整型变量,则执行表达式a=25/3%3后a 的值为【】答案:23.int m=5,y=2;则表达式y+=y-=m*=y 的值为。
【】答案:-164.结构化程序由【】、【】、【】三种基本结构组成.答案:顺序、选择、循环5.已知a=10,b=15,c=1,d=2,e=0,则表达式c==(b>e )的值为【】。
答案:16.C 语言中,二维数组在内存中的存放方式为按【】优先存放.答案:答案:行行7.设a=3,b=4,c=5,则表达式!(a+b)+c-1&&b+c/2的值为【】答案:18.C 源程序的基本单位是【】。
答案:源程序的基本单位是【】。
答案:函数函数9.设C 语言中,int 类型数据占2个字节,则long 类型数据占【】个字节,short 类型数据占【】个字节.答案:4,210.按内存排列顺序,数组char a[2]中的所有元素是a[1]和【】.答案:a[0]11.int x;x=-3+4*5-6,则x 的值为【】.答案:1112.执行以下程序段后,s 的值是【】int a[]={5,3,7,2,1,5,3,10},s=0,k;for(k=0;k<8;k+=2)s+=*(a+k);答案:1613.在C语言中的实型变量分为两种类型,它们是float型和【】型.答案:double14.若已知a=10,b=20,则表达式!a<b的值为【】。
答案:115.为条件表达式z=x>y?a:b释义:【】答案:当x>y时,z=a;【】答案:当否则z=b;16.若要调用函数fabs(),必须包含头文件【】答案:math.h17.请写出数学式a/bc的C语言表达式【】。
答案:(a/b)*c或(a*c)/b18.已知a=10,b=15,c=1,d=2,e=0,则表达式(c==b)>e的值为【】.答案:019.条件“20<x<30或x<-100”的C语言表达式是【】。
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语言程序填空题加答案
20、 在for(表达式1;表达式2;表达式3) 语句中 表达式1执行了【 1 】次. 21、 执行以下程序后,输出'$'号的个数是【 6 】. main() { int i,j;
for(i=1; i<5; i++) for(j=2; j<=i; j++) putchar('$'); } 22、 执行下列程序段后,s的值是【 15 】. int k, s; for(k=s=0; k<10&&s<=10; s+=k)k++; 23、 用while和do-while循环时,循环变量初始化的操作 应在while和do-while语句之【 前 】完成.
for(i=1;i<=5;i++) {f=f*【 i 】;s=s+f;}
8、 下面一段程序的功能是计算两个正整数(保存在int 型变量m和n中)的最大公约数, 并将结果保存到变量gcd中. for(;r=m%n;m=n,n=r);gcd=【 n 】; 9、 下面一段程序段的功能是显示10到20之间的偶数.
19、 当a=3,b=2,c=1;时,执行以下程序段后,b的值为
【1
】.
if(a>b) a=b;
if(b>c) b=c;
else c=b;
c=a;
20、 当a=1,b=2,c=3时,执行以下程序段后,a的值为
【 3 】.
if (a>c)
b=a;ch语句中每一个case后面的常量表达式的值
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语言程序填空题
程序填空题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)。
三、程序填空题导读:在程序填空题中,已经给出了程序的主干,读者首先要理解程序的思路,再选择正确的内容填入空白处,使程序完成既定的功能。
这类习题的设计就是要引导读者逐步掌握编程的方法。
本节习题的难度适中,可能有些典型的程序在课堂上已经有所接触,读者一定要独立完成它,这样就可以逐步提高自己的编程能力。
在程序设计语言学习的中期,读者对程序设计已经有了初步的了解,而自己编写程序又不知从何处入手,此时解答此类题目可以避免盲目性,从而提高学习的效率。
【3.1】下面程序的功能是不用第三个变量,实现两个数的对调操作。
#include <stdio.h>main(){ int a,b;scanf("%d%d",&a,&b);printf("a=%d,b=%d\n",a,b);a= ① ;b= ② ;a= ③ ;printf("a=%d,b=%d\n",a,b);}【3.2】下面程序的功能是根据近似公式:π2/6≈ 1/12+1/22+1/32+ …… +1/n2,求π值。
#include <math.h>double pi(long n){ double s=0.0;long i;for(i=1;i<=n;i++)s=s+ ① ;return( ② );}【3.3】下面的程序的功能是求一维数组中的最小元素。
findmin(int *s,int t,int *k){ int p;for(p=0,*k=p;p<t;p++)if(s[p]<s[*k])① ;}main(){ int a[10],i,*k=&i;for(i=0;i<10;i++)scanf("%d",&a[i]);findmin(a,10,k);printf("%d,%d\n",*k,a[*k]);}【3.4】下面程序的功能是计算1-3+5-7+ …… -99+101的值。
main(){ int i,t=1,s=0;for(i=1;i<=101;i+=2){ ① ;s=s+t;② ;}printf("%d\n",s);}【3.5】有以下程序段:s=1.0;for(k=1;k<=n;k++)s=s+1.0/(k*(k+1));printf("%f\n",s);填空完成下述程序,使之与上述程序的功能完全相同。
s=0.0;① ;k=0;do{ s=s+d;② ;d=1.0/(k*(k+1));}while( ③ );printf("%f\n",s);【3.6】下面程序的功能是从键盘上输入若干学生的学习成绩,统计并输出最高成绩和最低成绩,当输入为负数时结束输入。
main(){ float x,amax,amin;scanf("%f",&x);amax=x;amin=x;while( ① ){ if(x>amax) amax=x;if( ② ) amin=x;scanf("%f",&x);}printf("\namax=%f\namin=%f\n",amax,amin);}【3.7】下面程序的功能是将形参x的值转换为二进制数,所得的二进制数放在一个一维数组中返回,二进制数的最低位放在下标为0的元素中。
fun(int x,int b[]){ int k=0,r;do{ r=x% ① ;b[k++]=r;x/= ② ;}while(x);}【3.8】下面程序的功能是输出1到100之间每位数的乘积大于每位数的和的数。
例如数字26,数位上数字的乘积12大于数字之和8。
main(){ int n,k=1,s=0,m;for(n=1;n<=100;n++){ k=1;s=0;① ;while( ② ){ k*=m%10;s+=m%10;③ ;}if(k>s)printf("%d",n);}}【3.9】下面程序的功能是统计用0至9之间的不同的数字组成的三位数的个数。
main(){ int i,j,k,count=0;for(i=1;i<=9;i++)for(j=0;j<=9;j++)if( ① ) continue;else for(k=0;k<=9;k++)if( ② ) count++;printf("%d",count);}【3.10】下面程序的功能是输出100以内的个位数为6、且能被3整除的所有数。
main(){ int i,j;for(i=0;① ;i++){ j=i*10+6;if( ② ) countinue;printf("%d",j);}}【3.11】下面程序的功能是用辗转相除法求两个正整数m和n的最大公约数。
hcf(int m,int n){ int r;if(m<n){ r=m;① ;n=r;}r=m%n;while( ② ){ m=n;n=r;r=m%n;}③ ;}【3.12】下面程序的功能是使用冒泡法对输入的10个浮点数从小到大进行排序。
排好序的10个数分两行输出。
程序如下:#include <stdio.h>main(){ ① ;int i,j;printf("Input 10 numbers please\n");for(i=0;② ;i++ )scanf("%f", &a[i]);printf("\n");for(i=2;③ ;i++ )for(j=0;④ ;j++ )if( ⑤ ){ x=a[j];⑥ ;a[j+1]=x;printf("The sorted 10 numbers;\n");for(i=0;⑦ ;i++ ){ if( ⑧ )printf("\n");printf("%f\t",a[i]);}printf("\n");}【3.13】下面程序的功能是读入20个整数,统计非负数个数,并计算非负数之和。
#include "stdio.h"main(){ int i,a[20],s,count;s=count=0;for(i=0;i<20;i++ )scanf("%d", ① );for(i=0;i<20;i++){ if(a[i]<0)② ;s+=a[i];count++;printf("s=%d\t count=%d\n",s,count);}【3.14】下面程序的功能是删除字符串s中的空格。
#include <stdio.h>main(){ char *s="Beijing ligong daxue";int i,j;for(i=j=0;s[i]!='\0';i++)if(s[i]!= ' ') ① ;else ② ;s[j]= '\0';printf("%s",s);}【3.15】下面程序的功能是将字符串s中所有的字符'c'删除。
请选择填空。
#include<stdio.h>main( ){ char s[80];int i,j;gets(s);for(i=j=0;s[i]!= '\0';i++ )if(s[i]!= 'c') ① ;s[j]= '\0';puts(s);}【3.16】下面程序的功能是输出两个字符串中对应相等的字符。
请选择填空。
#include <stdio.h>char x[]="programming";char y[]="Fortran";main(){ int i=0;while(x[i]!= '\0' && y[i]!= '\0')if(x[i]==y[i])printf("%c", ① );elsei++;}【3.17】下面程序的功能是将字符串s中的每个字符按升序的规则插到数组a中, 字符串a已排好序。
#include <string.h>main(){ char a[20]="cehiknqtw";char s[]="fbla";int i,k,j;for(k=0;s[k]!= '\0';k++ ){ j=0;while(s[k]>=a[j] && a[j]!= '\0' )j++;for( ① )② ;a[j]=s[k];}puts(a);}【3.18】下面程序的功能是对键盘输入的两个字符串进行比较,然后输出两个字符串中第一个不相同字符的ASCII码之差。
例如:输入的两个字符串分别为"abcdefg"和"abceef",则输出为-1。
#include <stdio.h>main(){ char str1[100],str2[100],c;int i,s;printf("Enter string 1: ");gets(str1);printf("Enter string 2: ");gets(str2);i=0;while((str1[i] == str2[i] && str1[i]!= ① ))i++;s= ② ;printf("%d\n", s);}【3.19】下面的函数expand在将字符串s复制到字符串t时,将其中的换行符和制表符转换为可见的转义字符表示,即用'\n'表示换行符,用'\t'表示制表符。
expand(char s[],char t[]){ int i,j;for(i=j=0;s[i]!= '\0';i++ )switch (s[i]){ case '\n': t[ ① ] = ② ;t[j++] = 'n';break;case '\t': t[ ③ ] = ④ ;t[j++] = 't';break;default: t[ ⑤ ] = s[i];break;}t[j] = ⑥ ;}【3.20】下面的函数index(char s[], char t[])检查字符串s中是否包含字符串t,若包含,则返回t在s中的开始位置(下标值),否则送回-1。