西工大C语言上机考试题库
- 格式:docx
- 大小:128.22 KB
- 文档页数:52
计算机程序设计基础2014-2015学年第二学期一.选择题:(共40分,每题1分)1. 以下选项中,能用作用户标识符的是______。
A)float B)3bc C)_00 D)c#d2. 以下选项中不能用作C程序合法常量的是______。
A)'%d' B)'\123' C)1e-3 D)12.343. sizeof( char )的值是______。
A)8 B)4 C)2 D)14. 若有定义:int x=3,y=2,z=1;,以下选项中错误的赋值表达式是______。
A)z=(x+y)++; B)z=(x=5)+y; C)z=x+++y; D)z=x+y==5;5. 表达式5.8 – 14 / 5 + 14 % 5 的值是______。
A)7.0 B)7.8 C)5.0 D)5.86. 若有定义:int x=2; float y=3;, 则表达式x+y的类型是______。
A)char B)int C)double D)float7. 若有定义:int x ; ,关系表达式1<x<10的值是______。
A)1 B)0 C)-1 D)无法确定8. 若有定义:int x=2, y=3;, 则值为1 的表达式是______。
A)!(x<y) B)!y == '\0' C)x>0 && y<x D)x++==y9. 若char c=’a’;则c=((c>=’a’ && c<=’z’) ? (c-32) : c)的值是______。
A)'a' B)'z' C)'A' D)'Z'10. 若a 是数值类型,则逻辑表达式(a==0) || (a!=0)的值是______。
A)0 B)1 C)2 D)无法判断11. 设int a=3,b=2,c=5,m=8,n=8;求解表达式(m=a>b) || (n=a>c)后m和n分别为______。
c语言上机选择题题及答案1、下列字符序列中,不可用作C语言标识符的是(c)A.abc123 B.no_1 C.a!b D._ok_02、正确的C语言标识符是(a)A._buy_2 B.2_buy C.?_buy D.buy?3、不属于C语言关键字的是(D)A.int B.break C.while D.character4、以下选项中,合法的C语言标识符是(A)A.mon B.2_abc C.3dmax D.A.dat5、以下选项中,合法的实型常数是(C)A.5E2.0 B.E-3 C.2E02 D.1.3E6、以下选项中,正确的字符常量是(C)A."F" B.'\\'' C.'W' D.'''7、已知字母A的ASCII码为十进制数65,且S为字符型,则执行语句S='A'+'6'-'3';后,S中的值为(A)A.'D' B.68 C.不确定的值D.'C'8、在C语言中,要求运算数必须是整型的运算符是(D)A./ B.++ C.*= D.%9、若有定义:int m=7; float x=2.5, y=4.7;则表达式x+m%3*(int)(x+y)%2/4的值是(A) A.2.500000 B.2.750000 C.3.500000 D.0.00000010、设变量x为float类型,m为int类型,则以下能实现将x中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是(B)A.x=(x*100+0.05)/100.0 B.m=x*100+0.5, x=m/100.0C.x=x*100+0.5/100.0 D.x=(x/100+0.5)*100.011、假设所有变量均为整型,则表达式(x=2, y=5, y++, x+y)的值是(B)A.7 B.8 C.6 D.212、已知s是字符型变量,下面不正确的赋值语句是(B)A.s='\012'; B.s= 'u+v';C.s='1'+'2'; D.s=1+2;13、设x、y均为float型变量,则不正确的赋值语句是(C)A.++x ; B.x*=y-2;C.y=(x%3)/10; D.x=y=0;14、putchar函数可以向终端输出一个(D)A.整型变量表达式值。
第一章1. 一个C源程序必须有一个也只能有一个函数。
2. 是构成C程序的基本单位。
3. 一个C程序总是从函数开始执行的。
4.在C语言中,一个函数一般由两个部分组成,它们是和。
5. C语句是以结束的。
6. 可以用对C程序中的任何部分作注释。
7. 下面4个选项中,均是C语言关键字的选项是。
A) auto B) switch C) else D) ifchar void extern structinclude continue scanf type8. 下面正确的说法是。
A) main函数可以调用其他函数,也可以被其他函数调用B)每个C语言源文件必须包含一个main函数,方可进行编译C) 分号是c语句的一部分D)函数的首部后必须加分号第一章1. main2. 函数 3 main 4.函数的首部函数体 5. ;6. /*. */7. b 8.c第三章1.1. 以下组常量全是合法的C语言常量。
A) ―1\101ab‖ 0f 3.e5 B) ‗abc‘ -0 9eC) ‗$‘ 1e5 0xa D) .5e-5 0198 e3.02. 如有定义:char c=‘\010‘;则变量c中包含的字符个数为。
3. 字符串“ab\n\\012\\\‖‖的长度是。
4. C语言中,整常数18的三种具体表示形式为。
5. C语言中的标识符只能由字母,数字,下划线3种字符组成,且第一个字符。
A)必须为字母B) 必须为下划线C)必须为字母或下划线D)可以为字母、数字、下划线中的任一种字符6. 下列4组选项中,均是C语言合法用户标识符的选项是。
A) timp abc$ suml B) day day_1 _dayC) day-1 3ab sum D) m.d.j 123 class7.C语言中int、char和double三种类型数据在内存中所占字节数的大小关系为。
8.若有定义:char a=123,b=456; int sum; 执行sum=a+b; 后,sum的值是。
西工大2020年4月《C语言程序设计》作业机考试卷总分:100 得分:96一、单选题(共35 道试题,共70 分)1. 一个C程序的执行是从()。
A.本程序的main函数开始,到main函数结束B.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C.本程序的main函数开始,到本程序文件的最后一个函数结束D.本程序文件的第一个函数开始,到本程序main函数结束正确答案:A2. 在C语言中,只有在使用时才占用内存单元的变量,其存储类型是()。
A.auto和registerB.extern和registerC.auto和staticD.static和register正确答案:A3. 以下存储类型只有在使用时才为该类型变量分配内存的是()。
A.auto和staticB.auto和registerC.register和staticD.static和extern正确答案:B4. 运行程序:#includemain(){int n='c';switch(n++){ default: printf("error");break;case 'a':case 'A':case 'b':case 'B':printf("good");break;case 'c':case 'C':printf("pass");case 'd':case 'D':printf("warn");}}则输出结果是()。
A.goodB.passC.warnD.passwarn。
1:2:3#include<stdio.h>#include<math.h>int main(){int i=0,j=0,k=0,a=0,b=0,c=0,l=0,m=0,n=0,d=0,p=0,q=0;for(i=1;i<=3;i++){for(j=1;j<=9;j++){if(i!=j){for(k=1;k<=9;k++){if(k!=j&&i!=k){a=i*100+j*10+k;b=a*2;c=a*3;l=b%10,d=c%10;m=(b%100)/10,p=(c%100)/10;n=b/100,q=c/100;if(l!=0&&m!=0&&n!=0&&d!=0&&p!=0&&q!=0)if(i!=l&&i!=m&&i!=n&&j!=l&&j!=m&&j!=n&&k!=l&&k!=m&&k!=n) if(i!=d&&i!=p&&i!=q&&j!=d&&j!=p&&j!=q&&k!=d&&k!=p&&k!=q)if(l!=d&&l!=p&&l!=q&&m!=d&&m!=p&&m!=q&&n!=d&&n!=p&&n!=q)printf("%d %d %d\n",a,b,c);}}}}}return 0;}8#include"stdio.h"int main(){int a,b[10],m=0,n=0,p;int i,j,k;scanf("%d",&a);for(i=1;i<=a;i++){m=0;n=0;p=i;for(j=0;p!=0;j++){b[j]=p%10;p=p/10;}for(k=0;k<j;k++){m=m+b[k];if(b[k]==8){n=1;}}if(m%8==0){printf("%d ",i);continue;}if(i%8==0){printf("%d ",i);continue;}if(n==1){printf("%d ",i);continue;}}return 0;}8的次数A*B#include <stdio.h>#include <string.h>#include <stdlib.h>void cheng(char a[],char b[]){int i,j,ca,cb,*s;ca=strlen(a);cb=strlen(b);s=(int *)malloc(sizeof(int)*(ca+cb));for (i=0;i<ca+cb;i++) s[i]=0;for (i=0;i<ca;i++)for (j=0;j<cb;j++)s[i+j+1]+=(a[i]-'0')*(b[j]-'0');for (i=ca+cb-1;i>=0;i--)if (s[i]>=10){s[i-1]+=s[i]/10;s[i]%=10;}i=0;while(s[i]==0) i++;for (;i<ca+cb;i++) printf("%d",s[i]);printf("\n");free(s);}int main(){char a[100],b[100];gets(a),gets(b);if(a[0]=='-'&&b[0]!='-'){printf("-");cheng(&a[1],b);}else if(a[0]=='-'&&b[0]=='-'){cheng(&a[1],&b[1]);}else if(a[0]!='-'&&b[0]=='-'){printf("-");cheng(a,&b[1]);}elsecheng(a,b);return 0;}N边形面积#include<stdio.h>#include<math.h>#define PI 3.1415926int main(){double s,a;int n;scanf("%d %lf",&n,&a); s=a*a*n/(2*2*tan(PI/n)); printf("%.2lf\n",s); return 0;}参加竞赛#include<stdio.h>int main(){int a,b,c,d,e;for(a=0;a<2;a++)for(b=0;b<2;b++)for(c=0;c<2;c++)for(d=0;d<2;d++)for(e=0;e<2;e++)if(((a==1&&b==1)||(a==0&&b==0))&&((b==0&&c==1)||(b==1&&c==0))&&((c==1&&d==1)||(c==0&&d==0))&&(!(d==0&&e==0))&&((e==1&&a==1&&d==1)||(e==0))) { if(a==1){printf("A ");}if(b==1){printf("B ");}if(c==1){printf("C ");}if(d==1){printf("D ");}if(e==1){printf("E ");} }return 0;}草坪喷水插入排序#include<stdio.h>void sort(int a[],int n){int i;int k;int t;for(i=1;i<n;i++){t=a[i];k=i-1;while(t<a[k]){a[k+1]=a[k];k--;if(k==-1)break;}a[k+1]=t;}}int main(){int n;int a[100];int i;scanf("%d",&n);for(i=0;i<n;i++)scanf("%d",&a[i]);sort(a,n);printf("\n");for(i=0;i<n;i++)if(i==n-1)printf("%d\n",a[i]);else printf("%d ",a[i]);return 0;}查找车牌号#include<stdio.h> #include<math.h>int main(){int i,j,n;for(i=1;i<=9;i++){for(j=0;j<=9;j++){for(n=33;n<=100;n++){if((n*n)==(i*1100+j*11))printf("%d",i*1100+j*11);}}}return 0;}成绩转化乘完倒序尺子刻度大数除法大数减法#include <stdio.h>#include <string.h>#define max(a,b) a>b?a:b#define min(a,b) a>b?b:aint sum[101];void jia(char a[],char b[]){int flag=0,i,len1,len2,lenmax,lenmin;len1=strlen(a),len2=strlen(b);lenmax=max(len1,len2),lenmin=min(len1,len2); for(i=1;i<=lenmax;i++){if(i<=lenmin){sum[lenmax-i]=a[len1-i]+b[len2-i]-'0'-'0'+flag;if(sum[lenmax-i]>=10){sum[lenmax-i]=sum[lenmax-i]-10;flag=1;}else flag=0;}else{if(len1>len2){sum[lenmax-i]=a[len1-i]-'0'+flag;if(sum[lenmax-i]>=10){sum[lenmax-i]=sum[lenmax-i]-10;flag=1;}else flag=0;}else{sum[lenmax-i]=b[len2-i]-'0'+flag;if(sum[lenmax-i]>=10){sum[lenmax-i]=sum[lenmax-i]-10;flag=1;}else flag=0;}}}if(flag==1)printf("1");for(i=0;i<lenmax;i++)printf("%d",sum[i]);printf("\n");}void jian(char a[],char b[]){int flag=0,i;int len1,len2;len1=strlen(a),len2=strlen(b);for(i=1;i<=len1;i++){if(i<=len2){if(a[len1-i]-b[len2-i]-flag>=0){sum[len1-i]=a[len1-i]-b[len2-i]-flag;flag=0;}else{sum[len1-i]=a[len1-i]-b[len2-i]-flag+10;flag=1;}}else{if(a[len1-i]-flag-'0'>=0){sum[len1-i]=a[len1-i]-flag-'0';flag=0;}else{sum[len1-i]=a[len1-i]-flag+10-'0';flag=1;}}}for(i=0;i<len1&&sum[i]==0;i++);for(;i<len1;i++)printf("%d",sum[i]);printf("\n");}void compare(char a[],char b[]){int len1,len2;len1=strlen(a),len2=strlen(b);if(len1>len2||(len1==len2&&strcmp(a,b)>0)) jian(a,b);else if(strcmp(a,b)!=0){printf("-");jian(b,a);}elseprintf("0\n");}int main(){char a[100],b[100];gets(a);gets(b);if(a[0]=='-'&&b[0]!='-'){printf("-");jia(&a[1],b);}else if(a[0]=='-'&&b[0]=='-')compare(&b[1],&a[1]);else if(a[0]!='-'&&b[0]=='-')jia(a,&b[1]);elsecompare(a,b);return 0;}大写变小写#include<stdio.h>#include<string.h>int main(){char s[80];int len,i;gets(s);len=strlen(s);for(i=0;i<len;i++){if(s[i]>='a'&&s[i]<='z')s[i]=s[i]-32; }puts(s);return 0;}到底星期几等比数列#include <stdio.h>#include <stdlib.h>int main(){int m,n,sum;scanf ("%d",&m);for (n=1; ;n++) {sum=(3*n-1)*n/2; if (sum>m) break;}printf ("%d",n);return 0;}分数#include<stdio.h> int main(){int k,x=1,y=1;float a,b;scanf("%d",&k);for(;y<=5000;y++){for(x=y;x<=5000;x++){a=1.0/k;b=1.0/x+1.0/y;if(a==b)printf("1/%d=1/%d+1/%d\n",k,x,y);}}return 0;}韩信点兵#include<stdio.h>int main(){int n,i;for (i=0;;i++) {if (i%5==2&&i%6==3&&i%7==4&&i%11==5) {printf("%d",i);break;} }return 0;}回文字符串#include<stdio.h>#include<string.h>#include<ctype.h>#define MAXN 5000+10 char buf[MAXN],s[MAXN]; int p[MAXN];int main(){int n,m=0,max=0,x,y;int i,j;fgets(buf,sizeof(s),stdin);n=strlen(buf);for(i=0;i<n;i++){if(isalpha(buf[i])){p[m]=i;s[m++]=toupper(buf[i]);}}for(i=0;i<m;i++){for(j=0;i-j>=0&&i+j<m;j++){if(s[i-j]!=s[i+j])break;if(j*2+1>max){max=j*2+1;x=p[i-j];y=p[i+j];} }for(j=0;i-j>=0&&i+j+1<m;j++){if(s[i-j]!=s[i+j+1])break;if(j*2+2>max){max=j*2+2;x=p[i-j];y=p[i+j+1];} }}for(i=x;i<=y;i++)printf("%c",buf[i]);printf("\n");return 0;}#include<iostream>using namespace std;int main(){char A[5000],B[5000];int a=0,b,c,d,e,f,n=0,m,p,q,C[5000];while((A[a]=cin.get())!='\n') a++;for(b=0,c=0;b<=a-1;b++){if((A[b]>=65&&A[b]<=90)||(A[b]>=97&&A[b]<=122)){B[c]=A[b],C[c]=b;if(B[c]>=97&&B[c]<=122) B[c]=B[c]-32;c++;}}B[c]=32;for(d=0;d<=c-2;d++){if(B[d]==B[d+1]) e=d,f=d+1,a=1;else if(B[d]==B[d+2]) e=d,f=d+2,a=1;else continue;while(e-1>=0&&f+1<=c&&B[e-1]==B[f+1]) e--,f++;m=f-e;if(m>n) n=m,p=e,q=f;}for(a=C[p];a<=C[q];a++)cout<<A[a];cout<<endl;}鸡的体重计算数据整数部分加密#include<stdio.h>#include<string.h>int main(){FILE*pi;pi=fopen("in.dat","w");char A[1000],B[1000];int i,n;gets(A);n=strlen(A);for(i=0;i<n;i++){fprintf(pi,"%c",A[i]);if('A'<=A[i]<'Z'||'a'<=A[i]<'z')B[i]=A[i]+1;if(A[i]=='Z'||A[i]=='z')B[i]=A[i]-25;}for(i=0;i<n;i++)printf("%c",B[i]);fclose(pi);return 0;}阶乘#include<stdio.h>int main(){int n;int i=2;int j=1;scanf("%d",&n); while(1){j=j*i;if(j>n) break;i++;}printf("%d\n",i-1); return 0;}卡片恐怖水母#include<stdio.h>void paixu(int A[],int m){int i=1,n=0,j=0;for(;j<m;j++){for(i=j+1;i<m;i++){if(A[i]<A[j]){n=A[j];A[j]=A[i];A[i]=n;}}}}int main(){int n=0,m=0,A[100]={0},B[100]={0},i=0,j=0,k=0;scanf("%d%d",&n,&m);for(i=0;i<n;i++)scanf("%d",&A[i]); }for(i=0;i<m;i++){scanf("%d",&B[i]); }if(m<n){printf("NULL\n");}else{paixu(A,n);paixu(B,m);for(i=0;i<m;i++) {if(A[0]<=B[i]){if(m-i>=n){for(k=0;k<n;k++) {j+=B[i+k];}printf("%d\n",j);}else{printf("NULL\n");}break;}}}return 0;}快速排序#include<stdio.h>void QuickSort(int A[],int n,int L,int R) {int i,j,t;if(L<R){i=L;j=R+1;while(1){while(i+1<n&&A[++i]<A[L]);while(j-1>-1&&A[--j]>A[L]);if(i>=j)break;t=A[i];A[i]=A[j];A[j]=t;}t=A[L],A[L]=A[j],A[j]=t;QuickSort(A,n,L,j-1);QuickSort(A,n,j+1,R);}}int main(){int A[1000],n,i,j,p;scanf("%d",&n);if(n>=1000) {printf("Overflow!!!") ;return 0; }//输入要排序的元素的数目,若大于1000则结束程序输出“Overflow!!!”for(i=0;i<n;i++)scanf("%d",&A[i]); //输入元素QuickSort(A,n,0,n-1);for(i=n-1;i>=0;i--)printf("%d ",A[i]); //输出排序好的结果return 0;}两人三足#include<stdio.h>int main(){int n,a[50],i,j,t,sum=0;scanf("%d\n",&n);for (i=0;i<n;i++) scanf("%d",&a[i]);for (i=0;i<n;i++) {for (j=0;j<n-i-1;j++) {if (a[j]<a[j+1]) t=a[j],a[j]=a[j+1],a[j+1]=t;}}for (i=0;i<n;i+=2) sum+=a[i];printf("%d",sum);return 0;}逆序输出偶数和#include <stdio.h>#include <stdlib.h>int main(){int n,i,sum=0;scanf("%d",&n);int a[n];for(i=0;i<n;i++){scanf("%d",&a[i]);}for(i=0;i<n;i++){if(i%2==0)sum=sum+a[i];} printf("%d",sum);return 0;}三角形面积士兵移动输出位数#include<stdio.h>int main(){int i,n;scanf("%d",&n);for(i=1;;i++){if(n/10==0)break;else n=n/10;}printf("%d",i);}数列#include<stdio.h>int main(){int A[10],B[5],i;double C[5];for(i=0;i<5;i++)scanf("%d",&A[i]);for(i=0;i<4;i++){B[i]=A[i+1]-A[i];C[i]=(double)A[i+1]/A[i];}if(B[0]==B[1]&&B[1]==B[2]&&B[2]==B[3]){for(i=5;i<10;i++)A[i]=A[i-1]+B[0],printf("%d ",A[i]);return 0;}if(C[0]==C[1]&&C[1]==C[2]&&C[2]==C[3]){for(i=5;i<10;i++)A[i]=A[i-1]*C[0],printf("%d ",A[i]);return 0;}if((A[0]+A[1]==A[2])&&(A[1]+A[2]==A[3])&&(A[2]+A[3]==A[4])){ for(i=5;i<10;i++)A[i]=A[i-1]+A[i-2],printf("%d ",A[i]);return 0;}printf("NULL");return 0;}数字加密数组元素和水仙花数提取字符串#include <stdio.h>#include<string.h>int main(){char A[100];char l[100];gets(A);int m,n,i,j;scanf("%d",&m);n=strlen(A);for (i=m;i<n;i++){l[i]=A[i];}for (j=m;j<n;j++){printf("%c",l[j]);}printf("\n");return 0;}添加行号#include<stdio.h>#include<string.h>int main(){char A[3][100],B[3][100];int i;FILE*fp;fp=fopen("b.c","w");for(i=0;i<3;i++)gets(A[i]);fprintf(fp,"0001 ");fputs(A[0],fp);fprintf(fp,"\n""0002 ");fputs(A[1],fp);fprintf(fp,"\n""0003 ");fputs(A[2],fp);fprintf(fp,"\n");fclose(fp);printf("0001 ");puts(A[0]);printf("0002 ");puts(A[1]);printf("0003 ");puts(A[2]);return 0;}舞伴配对相乘后位数相加#include <stdio.h>int main(){int k;long a,b;scanf("%ld%ld",&a,&b);if(a==0||b==0)printf("0\n");else{k=(a%9)*(b%9)%9;if(k==0)printf("9\n");elseprintf("%d\n",k);}return 0;}#include <iostream>using namespace std;int main(){char A[13],B[13];int a=0,b=0,c,d,e,f,m=0,X[13],Y[13]; for(c=0;c<=12;c++)X[c]=0,Y[c]=0;while((A[a]=cin.get())!=32) a++; while((B[b]=cin.get())!='\n') b++; for(c=0,a--;a>=0;a--,c++)X[c]=A[a]-48;for(d=0,b--;b>=0;b--,d++)Y[d]=B[b]-48;for(e=0;e<=c-1;e++)for(f=0;f<=d-1;f++)m=m+X[e]*Y[f];while(m>10){a=m%10,m=(m-a)/10+a; }cout<<m<<endl;return 0;}销售记录#include<stdio.h>#include<string.h>typedef struct tagME{char a0[5];char a1[11];char a2[20];int a3;int a4;}tag;int main(){ tag a[100],b[100];int n,i,j=1,k=0;FILE *fp;scanf("%d",&n);for(i=0;i<=n-1;i++){scanf("%s %s %s %d %d",a[i].a0,a[i].a1,a[i].a2,&a[i].a3,&a[i].a4);} fp=fopen("out.dat","w");if(fp!=NULL){for(j=0;j<=n-1;j++){fscanf(fp,"%s%s%s%d%d",a[j].a0,a[j].a1,a[j].a2,&a[j].a3,&a[j].a4);}for(i=0;i<=n-2;i++){if(a[i].a4>=a[i+1].a4)b[0]=a[i],a[i]=a[i+1],a[i+1]=b[0];}printf("%s %s %s %d %d",a[i].a0,a[i].a1,a[i].a2,a[i].a3,a[i].a4);fclose(fp);}return 0;}星期几星座#include <stdio.h>int main(){int a,b;scanf("%d%d",&a,&b);switch (a){case 1:if(b<=19)printf("Capricorn");else printf("Aquarius");break;case 2:if(b<=18)printf("Aquarius");else printf("Pisces");break;case 3:if(b<=20)printf("Pisces");else printf("Aries");break;case 4:if(b<=20)printf("Aries");else printf("Taurus");break;case 5:if(b<=20)printf("Taurus");else printf("Gemini");break;case 6:if(b<=21)printf("Gemini");else printf("Cancer");break;case 7:if(b<=22)printf("Cancer");else printf("Leo");break;case 8:if(b<=22)printf("Leo");else printf("Virgo");break;case 9:if(b<=22)printf("Virgo");else printf("Libra");break;case 10:if(b<=22)printf("Libra");else printf("Scorpio");break;case 11:if(b<=21)printf("Scorpio");else printf("Sagittarius");break;case 12:if(b<=21)printf("Sagittarius");else printf("Capricorn");break;}return 0;}幸运数学号循环移位#include <stdio.h>int move(int value,int n){if(n<0){n=-n;value=(value<<n|value>>(32-n));}elsevalue=(value>>n|value<<(32-n));return(value);}int main(){int x,y;scanf("%d %d",&x,&y);printf("%d\n",move(x,y));return 0;}月份天数#include <stdio.h>int main(){int y,m,d;int A[13]={0,31,29,31,30,31,30,31,31,30,31,30,31};int B[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};scanf("%d%d",&y,&m);if((y%4==0&&y%100!=0)||(y%400==0))d=A[m];elsed=B[m];printf("%d",d);return 0; }月份转换英语运费职工信息字符串替换#include<stdio.h> #include<string.h> int main(){char A[100],B[100];int i;gets(A);for(i=0;i<100;i++){if(A[i]=='y'&&A[i+1]=='o'&&A[i+2]=='u') {A[i]='w';A[i+1]='e';A[i+2]=' ';}}for(i=0;A[i]!='\0';i++){if(A[i-2]=='w'&&A[i-1]=='e'&&A[i]==' ') continue;elseprintf("%c",A[i]);}printf("\n");return 0;}字符串长度字符输出#include<stdio.h>#include<string.h>int main(){char A[200],B[200];int p,n,i,j=0;gets(A);scanf("%d%d",&p,&n);for(i=p;i<=p+n-1;i++,j++){B[j]=A[i];}puts(B);}。
c语言上机考试题库单项选择题1.有char c=’1’,下面说法中正确的是()。
A. 语句putc+2);的输入结果为51B. 语句put“%d”,c+2);的输出结果为3C. 语句put“%c”,c+2);的输入结果为51D. 语句put“%c”,c+2);的输出结果为32.设c1,c2均就是char型变量,则下面不恰当的函数调用为()。
A. scanf(”c1=2=%c”,&c1,&c2);B. get);C. putc2);D. putc1,c2);3.为了表示关系x>=y>=z,下面C语言表达式中正确的是()。
A. (x>=y)&&(y>=z)B. (x>=y)and(y>=z)C. (x>=y>=z)D. (x>=y)&(y>=z)4.设x,y,z,t为int型变量,则继续执行以下语句后,t的值()。
x=y=z=1;t=++x||++y&&++z;A. 不定值B. 2C. 1D. 05.对if语句中表达式的类型,下面正确的说法是()。
A. 必须就是关系表达式B. 必须是关系表达式或逻辑表达式C. 可以就是任一表达式D. 必须是关系表达式或算术表达式6.对for(表达式1;;表达式3)可以认知为()。
A. for(表达式1;0;表达式3)B. for(表达式1;表达式1;表达式3)C. for(表达式1;1;表达式3)D. for(表达式1;表达式3;表达式3)7.执行语句for(i=1;i++<4;);之后,变量i的值为()。
A. 3B. 4C. 5D. 不确定8.若二维数组a存有m列,则在a[i][j]前的元素个数为()。
A. j*m+iB. i*m+jC. i*m+j-iD. i*m+j+19.下面说法中正确的是()。
A. 在C语言中,可以采用动态内存分配技术,定义元素个数气门的数组B. 在C语言中,数组元素的个数可以不确定,允许随即变动C. 在C语言中,数组元素的数据类型可以不一致D. 在C语言中,定义数组后,就确定了它能容纳的相同数据类型元素的个数10.无法把字符串:“good!”参数值数组b的语句就是()。
大一c语言机试试题库及答案一、选择题1. C语言中,用于定义一个函数的关键字是______。
A. intB. voidC. functionD. return答案:A2. 下列哪个选项是正确的C语言变量声明?A. int a;B. int a=;C. int = a;D. int a=b;答案:A3. C语言中,用于表示逻辑“与”运算的符号是______。
A. &&B. ||C. !D. =答案:A4. 下列哪个选项是C语言中的合法整数常量?A. 123B. 0x1AC. 1.23D. 0123答案:A5. C语言中,用于表示字符'A'的ASCII码值的常量是______。
A. '65'B. 'A'C. "65"D. "A"答案:B二、填空题1. C语言中,用于定义一个结构体的关键字是______。
答案:struct2. C语言中,表示逻辑“非”运算的符号是______。
答案:!3. C语言中,用于定义一个枚举类型的关键字是______。
答案:enum4. C语言中,用于定义一个联合体的关键字是______。
答案:union5. C语言中,用于定义一个指针的关键字是______。
答案:*三、编程题1. 编写一个C语言程序,计算并输出100以内的奇数之和。
```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 != 0) {sum += i;}}printf("Sum of odd numbers from 1 to 100 is: %d\n", sum); return 0;}```2. 编写一个C语言程序,实现字符串的反转。
```c#include <stdio.h>#include <string.h>void reverseString(char* str) {int length = strlen(str);for (int i = 0; i < length / 2; i++) {char temp = str[i];str[i] = str[length - i - 1];str[length - i - 1] = temp;}}int main() {char str[] = "Hello, World!";reverseString(str);printf("Reversed string: %s\n", str); return 0;}```。
西北工业大学2020春机考《C语言程序设计》作业1单选题1.下面程序的输出结果是()。
main() { int a[10]={1,2,3,4,5,6,7,8,9,10,*p=a;A.3B.4C.1D.2答案:VX:34637870获取参考答案2.以下描述错误的是()。
A.break 语句不能用于循环语句和 switch 语句外的任何其他语句B.在 switch 语句中使用 break 语句或 continue 语句的作用相同C.在循环语句中使用 continue 语句是为了结束本次循环,而不是终止整个循环D.在循环语句中使用 break 语句是为了使流程跳出循环体,提前结束循环答案:VX:34637870获取参考答案3.下面程序的输出结果是()。
main() { int x=10; x+=(x=8); printf("%d\n",x); }A.10B.8C.18D.16答案:VX:34637870获取参考答案4.定义 int i=1; 则执行语句 while(i++<5); 后,i 的值为()。
A.3B.4C.5D.6答案:VX:34637870获取参考答案5.若有语句 scanf("%d%d",&a,&b);要使变量 a,b 分别得到 10 和 20,正确的输入形式为()。
A.10 20B.10,20C.1020D.10:20答案:VX:34637870获取参考答案6.有以下定义 #include char a[10],*b=a; 不能给 a 数组输入字符串的语句是()。
A.gets(a)B.gets(a[0]);C.gets(&a[0]);D.gets(b)答案:VX:34637870获取参考答案7.当 c 的值不为 0 时,在下列选项中能够将 c 的值赋给变量 a、b 的是()。
A.c=b=a;B.(a=c)||(b=c);C.(a=c)&&(b=c);答案:VX:34637870获取参考答案8.以下描述中正确的是()。
大一c语言上机考试题及答案下载大一C语言上机考试题及答案下载一、选择题(每题2分,共10分)1. C语言中,以下哪个关键字用于定义一个函数?A. intB. returnC. voidD. function答案:A2. 下列哪个选项是正确的C语言变量声明?A. int a = 10, b = 20;B. int a = 10; b = 20;C. int a = 10; int b = 20;D. int a = 10, b = 20;答案:C3. C语言中,以下哪个运算符用于比较两个值是否相等?A. ==B. =C. !=D. <=答案:A4. 在C语言中,以下哪个选项是正确的字符串定义?A. char str[] = "Hello";B. char str[] = 'Hello';C. char str = "Hello";D. char str[] = {"Hello"};答案:A5. 下列哪个函数用于计算数组中元素的个数?A. sizeofB. countC. lengthD. size答案:A二、填空题(每题2分,共10分)1. C语言中,定义一个整型变量的关键字是________。
答案:int2. 在C语言中,使用________运算符可以连接字符串。
答案:+3. C语言中,________关键字用于定义一个结构体。
答案:struct4. C语言中,________函数用于输入字符串。
答案:gets5. C语言中,________函数用于输出字符串。
答案:puts三、编程题(每题10分,共20分)1. 编写一个C语言程序,计算并输出100以内所有偶数的和。
```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {sum += i;}}printf("Sum of even numbers from 1 to 100 is: %d\n", sum); return 0;}```2. 编写一个C语言程序,实现字符串反转的功能。
1:2:3#include<stdio.h>{{if(k!=j&&i!=k) {a=i*100+j*10+k;b=a*2;c=a*3;l=b%10,d=c%10;m=(b%100)/10,p=(c%100)/10;return 0;}8{n=0;p=i;for(j=0;p!=0;j++) {b[j]=p%10;p=p/10;}for(k=0;k<j;k++)if(n==1){printf("%d ",i); continue;}}return 0;}8的次数A*B{for (j=0;j<cb;j++)s[i+j+1]+=(a[i]-'0')*(b[j]-'0'); for (i=ca+cb-1;i>=0;i--)if (s[i]>=10){s[i-1]+=s[i]/10; s[i]%=10;}}{{printf("-");cheng(&a[1],b);}else if(a[0]=='-'&&b[0]=='-') {cheng(&a[1],&b[1]);}}N#include<math.h>#define PI 3.1415926int main(){double s,a;int n;scanf("%d %lf",&n,&a);s=a*a*n/(2*2*tan(PI/n));}{for(d=0;d<2;d++)for(e=0;e<2;e++)if(((a==1&&b==1)||(a==0&&b==0)) &&((b==0&&c==1)||(b==1&&c==0))&&((c==1&&d==1)||(c==0&&d==0))&&(!(d==0&&e==0))&&((e==1&&a==1&&d==1)||(e==0))){ if(a==1){printf("A ");}}{int i;int k;int t;for(i=1;i<n;i++){t=a[i];k=i-1;while(t<a[k]){}{int i;scanf("%d",&n);for(i=0;i<n;i++)scanf("%d",&a[i]);sort(a,n);printf("\n");for(i=0;i<n;i++)if(i==n-1)}{for(i=1;i<=9;i++){for(j=0;j<=9;j++){for(n=33;n<=100;n++){if((n*n)==(i*1100+j*11))printf("%d",i*1100+j*11);}}}return 0;}int sum[101];void jia(char a[],char b[]){int flag=0,i,len1,len2,lenmax,lenmin;len1=strlen(a),len2=strlen(b);lenmax=max(len1,len2),lenmin=min(len1,len2); for(i=1;i<=lenmax;i++){if(len1>len2){sum[lenmax-i]=a[len1-i]-'0'+flag;if(sum[lenmax-i]>=10){sum[lenmax-i]=sum[lenmax-i]-10; flag=1;}}}}if(flag==1)printf("1");for(i=0;i<lenmax;i++)printf("%d",sum[i]);printf("\n");}{{sum[len1-i]=a[len1-i]-b[len2-i]-flag; flag=0;}else{sum[len1-i]=a[len1-i]-b[len2-i]-flag+10; flag=1;sum[len1-i]=a[len1-i]-flag+10-'0';flag=1;}}for(i=0;i<len1&&sum[i]==0;i++); for(;i<len1;i++)printf("%d",sum[i]);}{jian(b,a);}elseprintf("0\n");int main(){char a[100],b[100];elsecompare(a,b);return 0;}大写变小写#include<stdio.h>#include<string.h>int main()等比数列#include <stdio.h>#include <stdlib.h>int main(){int m,n,sum;scanf ("%d",&m); for (n=1; ;n++){int k,x=1,y=1;float a,b;scanf("%d",&k);for(;y<=5000;y++){for(x=y;x<=5000;x++){a=1.0/k;b=1.0/x+1.0/y;if(a==b)printf("1/%d=1/%d+1/%d\n",k,x,y);}return 0;}回文字符串#include<stdio.h>#include<string.h>#include<ctype.h>#define MAXN 5000+10{p[m]=i;s[m++]=toupper(buf[i]); }}for(i=0;i<m;i++){for(j=0;i-j>=0&&i+j<m;j++)printf("%c",buf[i]);printf("\n");return 0;}#include<iostream>using namespace std;int main(){char A[5000],B[5000];B[c]=32;for(d=0;d<=c-2;d++){if(B[d]==B[d+1]) e=d,f=d+1,a=1;else if(B[d]==B[d+2]) e=d,f=d+2,a=1;else continue;while(e-1>=0&&f+1<=c&&B[e-1]==B[f+1]) e--,f++; m=f-e;int main(){FILE*pi;pi=fopen("in.dat","w");char A[1000],B[1000];int i,n;gets(A);n=strlen(A);}阶乘#include<stdio.h>int main(){int n;int i=2;int j=1;恐怖水母#include<stdio.h>void paixu(int A[],int m) {int i=1,n=0,j=0;for(;j<m;j++){for(i=j+1;i<m;i++){int n=0,m=0,A[100]={0},B[100]={0},i=0,j=0,k=0; scanf("%d%d",&n,&m);for(i=0;i<n;i++){scanf("%d",&A[i]); }for(i=0;i<m;i++)for(i=0;i<m;i++) {if(A[0]<=B[i]){if(m-i>=n){for(k=0;k<n;k++) {}return 0;}快速排序#include<stdio.h>void QuickSort(int A[],int n,int L,int R) {int i,j,t;}}int main(){int A[1000],n,i,j,p;scanf("%d",&n);if(n>=1000) {printf("Overflow!!!") ;return 0; }//输入要排序的元素的数目,若大于1000则结束程序输出“Overflow!!!”int n,a[50],i,j,t,sum=0;scanf("%d\n",&n);for (i=0;i<n;i++) scanf("%d",&a[i]);for (i=0;i<n;i++) {for (j=0;j<n-i-1;j++) {if (a[j]<a[j+1]) t=a[j],a[j]=a[j+1],a[j+1]=t;}}scanf("%d",&n);int a[n];for(i=0;i<n;i++){scanf("%d",&a[i]);}for(i=0;i<n;i++){if(i%2==0)sum=sum+a[i];} printf("%d",sum);return 0;if(n/10==0)break;else n=n/10;}printf("%d",i);}数列#include<stdio.h>int main()if(C[0]==C[1]&&C[1]==C[2]&&C[2]==C[3]){for(i=5;i<10;i++)A[i]=A[i-1]*C[0],printf("%d ",A[i]);return 0;}if((A[0]+A[1]==A[2])&&(A[1]+A[2]==A[3])&&(A[2]+A[3]==A[4])){ for(i=5;i<10;i++)A[i]=A[i-1]+A[i-2],#include <stdio.h>#include<string.h>int main(){char A[100];char l[100];gets(A);int m,n,i,j;scanf("%d",&m);}添加行号#include<stdio.h> #include<string.h>int main(){char A[3][100],B[3][100];int i;fclose(fp);printf("0001 ");puts(A[0]);printf("0002 ");puts(A[1]);printf("0003 ");puts(A[2]);return 0;}舞伴配对相乘后位数相加if(k==0)printf("9\n"); elseprintf("%d\n",k);}return 0;}#include <iostream>for(d=0,b--;b>=0;b--,d++) Y[d]=B[b]-48;for(e=0;e<=c-1;e++)for(f=0;f<=d-1;f++)m=m+X[e]*Y[f];while(m>10){a=m%10,m=(m-a)/10+a;int a3;int a4;}tag;int main(){ tag a[100],b[100]; int n,i,j=1,k=0; FILE *fp;scanf("%d",&n);fclose(fp);}return 0;}星期几星座#include <stdio.h>int main()else printf("Taurus");break;case 5:if(b<=20)printf("Taurus");else printf("Gemini");break;case 6:if(b<=21)printf("Gemini");else printf("Cancer");break;case 7:if(b<=22)printf("Cancer");else printf("Leo");break;case 8:if(b<=22)printf("Leo");}幸运数学号循环移位#include <stdio.h>int move(int value,int n){if(n<0)scanf("%d %d",&x,&y);printf("%d\n",move(x,y)); return 0;}月份天数#include <stdio.h> int main(){运费职工信息字符串替换#include<stdio.h>#include<string.h>int main(){}for(i=0;A[i]!='\0';i++){if(A[i-2]=='w'&&A[i-1]=='e'&&A[i]==' ')continue;elseprintf("%c",A[i]);}gets(A);scanf("%d%d",&p,&n);for(i=p;i<=p+n-1;i++,j++){ B[j]=A[i];}puts(B);}总分最高for(i=0;i<n;i++)scanf("%d",&a[i]); max=a[0];min=a[0];for(i=0;i<n;i++){if(a[i]>max) max=a[i]; if(a[i]<min) min=a[i];t=M*N;for(i=1;i<=t;i++) {if(i%N==0)。