c语言程序设计第05章在线测试

合集下载

在线c语言试题及答案

在线c语言试题及答案

在线c语言试题及答案1. 题目:编写一个C语言程序,实现两个整数的加法。

答案:```c#include <stdio.h>int main() {int num1, num2, sum;printf("Enter two integers: ");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("The sum of %d and %d is %d.\n", num1, num2, sum); return 0;}```2. 题目:如何使用指针交换两个变量的值?答案:```c#include <stdio.h>void swap(int *a, int *b) {int temp = *a;*a = *b;*b = temp;}int main() {int x = 10, y = 20;printf("Before swap: x = %d, y = %d\n", x, y); swap(&x, &y);printf("After swap: x = %d, y = %d\n", x, y); return 0;}```3. 题目:编写一个C语言程序,实现字符串的反转。

答案:```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[] = "Hello, World!";printf("Original string: %s\n", str);reverse(str);printf("Reversed string: %s\n", str);return 0;}```4. 题目:计算并输出100以内所有素数。

北理工《C语言程序设计》在线作业含正确答案

北理工《C语言程序设计》在线作业含正确答案

北理工《C语言程序设计》在线作业含正确答案北理工《C语言程序设计》在线作业含正确答案一、单选题共40题,80分1、在以下对C语言的描述中,正确的是()。

A在C语言中调用函数时,只能将实参数的值传递给形参,形参的值不能传递给实参BC语言函数既可以嵌套定义又可以递归调用C函数必须有返回值,否则不能使用函数DC语言程序中有定义关系的所有函数都必须放在同一源文件中2、若在键盘上输入:283.1900,想使单精度实型变量c的值为283.19,则正确的输入语句是()。

A、scanf("%f",&c);Bscanf("8.4f",&c);Cscanf("%6.2f",&c);Dscanf("8f",&c);3、以下()不是C语言的特点。

A语言的表达能力B语言定义严格C数据结构系统化D控制流程结构化4、C编译系统提供了对C程序的编辑、编译、连接和运行环境,以下可以不在该环境下进行的环节是()。

A编辑和编译B编译和连接C连接和运行D编辑和运行5、以下程序的输出是( )。

main(){char a[2][5]={“6937”,”8254”};inti,j,s=0;for(i=0;i<2;i++)for(j=0;a[i][j]>'0'&&a[i][j]<='9';j+=2)s=10*s+a[i][j]-‘0’;printf(“s=%d ”,s);}A、6385B69825C63825D6938256、已知:struct{int i; char c; float a; }test; 则sizeof(test)的值是()。

A4B5C6D772分已知“int a=4,b=5,c;”,则执行表达式“c=a=a>b”后变量a 的值为()。

A1B0C4D582分为了显示一个文本文件的内容,在打开文件时,文件的打开方式应当时()。

C语言程序设计_习题大全(含答案)

C语言程序设计_习题大全(含答案)

C语言程序设计_习题大全(含答案) C语言程序设计_习题大全(含答案)C语言程序设计是计算机科学与技术领域中非常重要的一门课程,对于学习和掌握程序设计的基本原理和方法具有重要意义。

在学习这门课程过程中,习题的练习和掌握是至关重要的一环。

本文将向大家介绍一份包含答案的C语言程序设计习题大全,帮助读者拓宽思路,加深对C语言程序设计的理解。

第一章:基础知识练习习题1:请编写一个C程序,输出"Hello, World!"。

答案:```c#include <stdio.h>int main() {printf("Hello, World!\n");return 0;}```习题2:请编写一个C程序,将两个整数相加并输出结果。

答案:```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("%d + %d = %d\n", num1, num2, sum);return 0;}```第二章:条件语句练习习题3:请编写一个C程序,判断某年份是否为闰年。

答案:```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;}```习题4:请编写一个C程序,判断用户输入的整数是否为正数、负数或者零。

C语言测试题(附有详细解析)

C语言测试题(附有详细解析)

C语言测试题(附有详细解析)一、选择题1. 以下哪个选项是C语言的关键字?A. ifB. sizeofC. structD. include解析:C语言中,关键字是指被C语言本身定义的具有特定意义的单词。

选项A的`if`是关键字,用于条件判断;选项C的`struct`是关键字,用于定义结构体;选项D的`include`实际上是预处理指令的一部分,不属于关键字。

选项B的`sizeof`是运算符,用于计算数据类型或变量的大小。

因此,正确答案是A、C。

2. 在C语言中,以下哪个选项表示整型变量?A. charB. intC. floatD. double解析:在C语言中,`int`类型用于存储整数。

选项A 的`char`用于存储字符;选项C的`float`和选项D的`double`用于存储浮点数。

因此,正确答案是B。

3. 以下哪个选项表示逻辑运算符?A. `++`B. `--`C. `&&`D. `%`解析:逻辑运算符用于连接多个条件表达式,包括与运算符`&&`、或运算符`||`和非运算符`!`。

选项C的`&&`是逻辑与运算符。

选项A的`++`和选项B的`--`是算术运算符,用于自增和自减;选项D的`%`是取模运算符。

因此,正确答案是C。

二、填空题1. 在C语言中,定义一个整型变量`a`并赋值为10的代码是______。

解析:定义整型变量`a`并赋值为10的代码如下:```cint a = 10;```2. 以下代码的输出结果是______。

```c#include <stdio.h>int main() {int x = 5;printf("%d\n", x++ + ++x);return 0;}```解析:在C语言中,`x++`是先使用x的值,然后x自增1;`++x`是先x自增1,然后使用x的值。

因此,`x++ + ++x`的执行过程如下:- `x++`,此时x的值为5,输出5;- `++x`,此时x的值为6,输出6;- 最终输出结果为11。

c语言及程序设计试题及答案

c语言及程序设计试题及答案

c语言及程序设计试题及答案一、选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项不是C语言中的运算符?A. %B. &&C. ::D. &&答案:C3. 在C语言中,哪个函数用于将字符串转换为浮点数?A. atoiB. atofC. itoaD. sprintf答案:B4. 下列哪个选项是合法的C语言变量名?A. 2variableB. variable2C. variable_2D. variable$2答案:C5. 在C语言中,以下哪个选项是正确的文件打开模式?A. "r"B. "w"C. "a"D. "r+"答案:D6. C语言中,以下哪个关键字用于定义一个函数?A. functionB. defC. voidD. int答案:C7. 在C语言中,以下哪个选项表示“不等于”?A. ==B. !=C. =D. ==答案:B8. C语言中,哪个函数用于计算字符串的长度?A. strlenB. strcpyC. strcatD. strcmp答案:A9. 在C语言中,以下哪个选项是正确的注释方式?A. // This is a single line commentB. /* This is a single line comment */C. //* This is a single line comment */D. /* This is a multi-line comment */答案:A10. C语言中,以下哪个关键字用于定义一个指针?A. ptrB. refC. *D. ^答案:C二、填空题(每题3分,共15分)1. 在C语言中,定义一个整型变量的正确语法是:int ________;答案:变量名2. 要将一个字符变量赋值为'A',正确的赋值语句是:char ch =________;答案:'A'3. 在C语言中,使用 ________ 函数可以输出格式化的字符串。

C程序设计1-5章测试题(答案版本)

C程序设计1-5章测试题(答案版本)

C程序设计1-5章测试题(04级)姓名____一、选择题:(每题3分,共60分)1、C语言提供合法的数据类型关键字是( d )A)double B)short C)integer D)char2、下列不属于字符型常量的是(b )A)‘A’B)“B”C)‘\n’ D)‘D’3、C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符 a 。

A)必须为字母或下划线。

B)必须为下划线。

C)必须为字母 D)可以是字母、数字和下划线中的任一种字符。

4、若有定义:int a = 7; float x = 2.5 , y = 4.7 ;则表达式 x + a % 3 * (int) (x + y) % 2/4 的值是 d 。

A) 2.750000 B) 0.00000 C) 3.500000 D) 2.5000005、设int a,b,c;执行表达式a=b=1,a++,b+1,c=a+b--后,a,b和c的值分别是 ( d)A)2,1,2 B)2,0,3 C)2,2,3 D)2,1,36、下列运符中优先级最高的是( b )A)&& B) ++ C) ?: D)!=7、若x、I、j和k都是int型变量,则计算下面表达式后,x的值是( c )x=(I=4,j=16,k=32)A) 4 B) 16 C) 32 D) 528、假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是(b)A) 7 B) 8 C) 6 D) 29、C语言规定:在一个源程序中,main函数的位置( c )A)必须在最开始B)必须在系统调用的库函数的后面C)可以任意D)必须在最后10、一个C语言程序是由( b )A)一个主程序和若干子程序组成B)函数组成C)若干过程组成D)若干子程序组成11、下面程序中的输出语句,a的值是( c),输出结果是(b)A)65 B)20 C)15 D)10#include <stdio.h>void main(){ int a;printf("%d\n",(a=3*5,a*4,a+5)); }12、下面不正确的字符串常量是( a )A) ‘bac’B) “12’123”C)”0”D) “”13、以下不符合C语言语法的赋值语句是(D)A) i++; B) i=i=5; C) k=(2*4,k*4); D) y=float(i);14、若有以下定义:char a; int b;float c; double d;则表达式a*b+d-c值的类型为(D)A) float B) int C) char D) double15、下列可以用作变量名的是( b )A)1 B)al )int D)*p16、C语言中最简单的数据类型包括()A)整型、实型、逻辑型B)整型、实型、字符型C)整型、字符型、逻辑型D)整型、实型、逻辑型、字符型分析:本题考查的知识点为C语言里的最基本的数据类型。

第五章自测练习答案 清华大学出版社 C语言习题、实验指导及课程设计

第五章自测练习答案 清华大学出版社 C语言习题、实验指导及课程设计

第五章自测练习参考答案一、选择题1.B或C2.D3.B4.D5.D6.C和D7.C8.C9.C 10.D(实际都正确)11.C 12.B 13.D 14.A 15.B 16.B 17.C 18.D 19.B 20.D21. D 22.B 23.D 24.D 25.D 26.D 27.C 28.A 29.A 30.A 31.D二、填空题1.i=1 x[i-1]2. &a[i] i%4==0 putchar(‘\n’);或printf(“\n”);3. k=0; k=i j=0; j=i i=a[k];a[k]=a[j];a[j]=i;4. 1 3 4 55. 求数组中正数的和并输出6.The number is :5,The average is:5.7. 常量表达式常量表达式8.按行存放,即先存第一行,再存第二行,以此类推9.0 610.011.3012.j=2 j>=013. 16 711 12 1316 17 18 1921 22 23 24 2514. j<=2 b[j][i]=a[i][j]15. 5816.在第一条scanf语句后增加j=n; % / 将第三个printf语句中的输出项n换成j j=i; j>0; j—17. 818. 60019. 在第三个for语句前增加s=0; k=0 a[i][k]*b[k][j] printf(“\n”);20. str[0] 并在第一个strcpy语句后增加一行:if(strcmp(str[1],s)<0) strcpy(s,str[1]);最后的空为:s三、编程题1.参考程序如下:#include "stdio.h"#define N 10void main(){int i,price[N];int max,min;float ave,sum;for(i=0;i<N;i++) scanf("%d",&price[i]);max=min=price[0];sum=ave=0;for(i=0;i<N;i++){sum+=price[i];if(price[i]>max) max=price[i];if(price[i]<min) min=price[i];}ave=(float)sum/N;printf("价格范围为%d---%d;平均价格为%.2f\n",min,max,ave);}2.选择排序的程序如下:#include "stdio.h"void main(){int i,j,min,temp,a[10];/*input*/for(i=0;i<10;i++)scanf("%d",&a[i]);printf("\n");/* start to sort */for(i=0;i<10-1;i++){min=i;for(j=i+1;j<10;j++)if(a[min]>a[j]) min=j;temp=a[i];a[i]=a[min];a[min]=temp;}/*output*/for(i=0;i<10;i++)printf("%5d",a[i]);}3.冒泡排序的程序如下:#define N 10#include "stdio.h"void main(){int i,j,m;int a[N];for(i=0;i<N;i++)scanf("%d",&a[i]);for(i=1;i<N;i++)for(j=0;j<N-i;j++)if(a[j]>a[j+1]){m=a[j];a[j]=a[j+1];a[j+1]=m;}for(i=0;i<N;i++)printf("%5d",a[i]);printf("\n");}4。

C语言程序设计精髓编程题在线测试

C语言程序设计精髓编程题在线测试

#include<stdio.h>#include<math.h>int main(){int aa, bb, cc;double re;printf("Input math1, English and math2:");scanf("%d,%d,%d", &aa, &bb, &cc);re = ( aa * 5 + bb * 1.5 + cc * 3.5) / 10;printf("Final score = %.2f\n", re);return 0;}#include<stdio.h>#include<math.h>int main(){float re;int i, day;printf("Input length and days:");scanf("%f,%d", &re, &day);for ( i=0; i< day; i++){re = re / 2;}printf("length=%.5f\n", re);return 0;}#include<stdio.h>#include<math.h>int main(){float re;printf("Input payment p:");scanf("%f", &re);re = re * 0.92;printf("price = %.1f\n", re);return 0;}#include<stdio.h>#include<math.h>typedef struct clock{int hour, minute, second;}CLOCK;int main(){CLOCK clock1,clock2;int diff=0, hour, minute;printf("Input time one(hour, second):");scanf("%d,%d", &clock1.hour,&clock1.minute);printf("Input time two(hour, second):");scanf("%d,%d", &clock2.hour,&clock2.minute);diff = abs((clock1.hour * 60 + clock1.minute) - (clock2.hour * 60 + clock2.minute));hour = floor(diff / 60);minute = diff % 60;printf("%d hour %d second\n",hour, minute);return 0;}#include <stdio.h> #include<math.h>int gcd(int x,int y){int r=x%y;while(r){x=y;y=r;r=x%y;}return y;}int main(){int a,b,c,d,t;printf("Input a/b, c/d:" );scanf("%d/%d,%d/%d",&a,&b,&c,&d);if(b>d){t=gcd(b,d);}else{t=gcd(d,b);}if(a*d/t>c*b/t)printf("%d/%d>%d/%d",a,b,c,d);else if(a*d/t==c*b/t)printf("%d/%d=%d/%d",a,b,c,d);elseprintf("%d/%d<%d/%d",a,b,c,d);return 0;}#include <stdio.h>#include <math.h>int main(){int year;double capital,rate, deposit;char n;printf("Input rate, year, capital:");scanf("%lf,%d,%lf",&rate, &year,&capital );printf("Compound interest (Y/N)?");scanf(" %c",&n);if(n=='n'||n=='N')deposit=capital*(1+rate*year);elsedeposit=capital*pow((1+rate),year);printf("deposit = %.4f\n",deposit);return 0;}#include <stdio.h>#include <math.h>int main(){int year;double capital,rate,deposit;char n;printf("Input capital, year:");scanf("%lf,%d",&capital,&year);printf("Compound interest (Y/N)?");scanf(" %c",&n);if(year==1||year==2||year==3||year==5||year==8) {switch(year){case 1:rate=0.0225; break;case 2:rate=0.0243; break;case 3:rate=0.0270; break;case 5:rate=0.0288; break;case 8:rate=0.0300; break;}if(n=='n'||n=='N') deposit=capital*(1+rate*year);else deposit=capital*pow((1+rate),year);printf("rate = %.4f, deposit = %.4f\n",rate,deposit);}else printf("Error year!\n");return 0;}#include<stdio.h>main(){int man , women ,children ;printf( "Man Women Children\n" ) ;for(man = 0 ; man <17 ; man++){for(women = 0 ; women <25 ;women++){children = 30 -women -man ;if(3*man +2*women + children ==50){printf("%3d%8d%8d\n" ,man,women ,children) ;}}}}#include<stdio.h>void main(){int e[10],t,d,b,i,j,a;char OK_flag=0;for(a=10;a<34;a++){d=a*a*a;b=a*a*a*a;e[0]=d/1000;e[1]=d/100%10;e[2]=d/10%10;e[3]=d%10;e[4]=b/100000;e[5]=b/10000%10;e[6]=b/1000%10;e[7]=b/100%10;e[8]=b/10%10;e[9]=b%10;for(i=0;i<9;i++)for(j=i+1;j<9+1;j++)if(e[i]>e[j]){t=e[i];e[i]=e[j];e[j]=t;}//if(e[]=={0,1,2,3,4,5,6,7,8,9})for(i=0;i<=9;i++)if(e[i]==i){OK_flag=1; continue;}else{OK_flag=0;break;}if(OK_flag) printf("age=%d\n",a); }}#include <stdio.h>int main(void){int yn, jn, i, count = 0;printf("Input your birth year:");scanf("%d", &yn);printf("Input this year:");scanf("%d", &jn);for (i = yn; i <= jn; i++){if (i % 4 == 0){printf("%d\n", i);count++;}}printf("count=%d\n", count);return 0;}#include <stdio.h>int main(void){int yn, jn, i;long unsigned count = 0;printf("Input your birth year:");scanf("%d", &yn);printf("Input this year:");scanf("%d", &jn);for (i = yn; i < jn; i++){if (i % 4 == 0){count = count + 366 * 24 * 60 * 75;}elsecount = count + 365 * 24 * 60 * 75;}}printf("The heart beats in your life: %lu", count);return 0;}#include<stdio.h>long Fact(int n);int main(void){int hundred, ten, one, m, n;for (hundred = 1;hundred <= 6;hundred++){for (ten = 0;ten <= 6;ten++){for (one = 0;one <= 6;one++){m = hundred * 100 + ten * 10 + one;n = Fact(hundred) + Fact(ten) + Fact(one);if (m == n){printf("%d\n", n);}}}}return 0;}long Fact(int n){int i;long s = 1;for (i = 1;i <= n;i++){s *= i;}}#include<stdio.h>int Func(int n);int main(void){int n1, m1;printf("Input n:");scanf("%d", &n1);if (n1 < 1000 || n1 > 1000000){printf("Input error!\n");return 0;}m1 = Func(n1);printf("%d\n", m1);return 0;}int Func(int n){int ys, i;for (i = n; i > 99; i--){if (n % i == 0 && i < 1000){ys = i;break;}}return ys;}#include<stdio.h>int Gcd(int a, int b);{int n1, m1, n2, m2, ys;printf("Input m,n:");scanf("%d,%d", &m1, &n1);if (m1 < 1 || n1 > 10000){printf("Input error!\n");return 0;}ys = Gcd(m1, n1);n2 = n1 / ys;m2 = m1 / ys;printf("%d/%d\n", m2, n2);return 0;}int Gcd(int a, int b){int ys, i, temp;if (a < b){temp = a;a = b;b = temp;}for (i = a; i > 0; i--){if (a % i == 0 && b % i == 0){ys = i;break;}}return ys;}# include <stdio.h>int SumPrime(int n){int i;int k;int sum=0;for(i=2;i<=n;++i ){for(k=2;k<i;++k){if(i%k==0)break;}if(k == i) sum+= k;}return sum;}int main (void){int n;int sum;printf("Input n:");scanf("%d",&n);sum=SumPrime(n);printf("sum=%d\n",sum);return 0;}#include <stdio.h>#include <math.h>double Y(double x, int n);int main(void){int n1;double x1, jieg;printf("Please input x and n:");scanf("%lf,%d", &x1, &n1);jieg = Y(x1, n1);printf("Result=%.2f\n", jieg);return 0;}double Y(double x, int n){double sum = 0;int i;for (i = 0; i < n; i++){sum = sqrt(sum + x);}return sum;}#include <stdio.h>int Sum(int n);int main(void){int n1, jieg;printf("Please input n:");scanf("%d", &n1);if (n1 <= 0){printf("data error!\n");return 0;}else{jieg = Sum(n1);}printf("sum=%d\n", jieg);return 0;}int Sum(int n){int m1 = 0, i;for (i = n; i > 0; i--){m1 = m1 + i;return m1;}#include <stdio.h>int Monkey(int n, int x);int main(void){int n1, gs1 = 1, gs2;printf("Input days n:");scanf("%d", &n1);gs2 = Monkey(n1, gs1);printf("x=%d\n", gs2);return 0;}int Monkey(int n, int x){int i, sum = 1;for (i = n - 1; i > 0; i--){sum = (sum + x) * 2;}return sum;}#include <stdio.h>int main(){int c,d;float w,p;printf("Input payment:");scanf("%f",&p);if(p>=1000)c=10;elsec=p/100;switch(c)case 0:d=0;break;case 1:d=5;break;case 2:case 3:case 4:d=8;break;case 5:case 6:case 7:case 8:case 9:d=10;break;case 10:d=15;break;default:printf("error");break;}w=p*(1-d/100.0);printf("price = %.1f\n" ,w);return 0;}#include<stdio.h>int main(){int a,n[11],i,c,x=0;for(i=1;i<=10;i++){scanf("%d",&n[i]);}scanf("%d",&c);c=c+30;for(i=1;i<=10;i++){if(n[i]<=c)x++;}printf("%d",x);return 0;}#include <stdio.h>int main(void){int n1, a1[1000], i,j, sum, k, count = 0;scanf("%d", &n1);for(i = 0; i < n1; i++){scanf("%d", &a1[i]);}for (i = 0; i < n1 - 1; i++){for (j = i + 1; j < n1; j++){sum = a1[i] + a1[j];for (k = 0; k < n1; k++){if (sum == a1[k]){count++;}}}}printf("%d", count);return 0;}#include<stdio.h>void separate(int m[], int n, int p);int search(int m[]);int main(){int i, j, k, l;int m[10];for (i = 123; i<333; i++){j = i * 2; k = i * 3;separate(m, i, 0);separate(m, j, 3);separate(m, k, 6);if (search(m) == 1) printf("%d,%d,%d\n", i, j, k); }getchar();return 0;}void separate(int m[], int n, int p){m[p] = n / 100;m[p + 1] = (n / 10) % 10;m[p + 2] = n % 10;}int search(int m[]){int i, j, flag = 1;for (i = 0; i<9; i++){for (j = i + 1; j<10; j++)if (m[i] == m[j] ){flag = -1;break;}if (flag == -1) break;}return flag;}#include <stdio.h>int main(void){int n1, i, j, count = 0, sum = 0, a1 = 0;printf("Input n(n<=500):");scanf("%d", &n1);for (i = n1; i > 1; i--){count = 0;for (j = i - 1; j > 0; j--){if (i % j == 0){count++;if (count == 2){break;}}}if (count == 1){a1++;if (a1 > 10){break;}printf("%6d", i);sum = sum + i;}}printf("\nsum=%d\n", sum);return 0;}#include<stdio.h>int CountRepeatNum(int count[], int n); main(){int m, a[100];long int n;printf("Input n:\n");scanf("%ld", &n);m = CountRepeatNum(a,n);if(m == 1)printf("Repeated digit!\n");elseprintf("No repeated digit!\n");}int CountRepeatNum(int count[], int n) {int i = 0, b,flag = 0;int c, d,k;while(n>0){b = n%10;count[i] = b;n/=10;i++;}for(c=0; c<=i; c++){for(d=c+1; d<=i; d++){if(count[c]==count[d])flag++;}}if(flag > 0)return 1;elsereturn -1;}#include<stdio.h>int IsCancel(int a[], int n, int k){int i,s=0;for (i=0;i<n;i++){if (a[i]<=0){s++;}}if (s<k){return 1;}elsereturn 0;}int main(){int a[100];int i,n,k;printf("Input n,k:\n");scanf("%d,%d",&n,&k);for (i=0;i<n;i++){scanf("%d",&a[i]);}if(IsCancel(a,n,k))printf("YES");elseprintf("NO");return 0;}#include<stdio.h>#include<string.h>main(){int a[100][100],m; int n,i,j,k,max,flag=0,shit=0,l; printf("Input m,n:\n"); scanf("%d,%d",&n,&l); printf("Input matrix:\n");for(i=0; i<n; i++)for(j=0; j<l; j++)scanf("%d",&a[i][j]);for(i=0; i<n; i++){ flag=0; m=a[i][0];for(j=0; j<l; j++) if(a[i][j]>m){ m=a[i][j]; max=j;}for(k=0; k<n; k++){if(a[k][max]<=m && k!=i){flag=1; break;}}if(flag==0){printf("a[%d][%d] is %d\n",i,max,m);shit=1;break; }}if (shit==0)printf("No saddle point!\n");}#include<stdio.h>#include<stdlib.h>#include<string.h>int Myatoi(char str[]){int i,j;for (i=0,j=0;str[i]!='\0';i++){if (str[i] >='0'&& str[i]<='9'){str[j]=str[i]; j++;}}str[j]='\0';return atoi(str);}int main(){char s[7];printf("Input a string:");scanf("%7s", s);printf("%d", Myatoi(s));printf("\n");return 0;}#include <stdio.h>#include <stdlib.h>#include "string.h"int find(const char a[],const char b[]) {int i,j,flag;for(i=0;i<=strlen(a)-strlen(b);i++){if(a[i]==b[0]){flag=1;//printf("\n");for(j=1;j<strlen(b);j++){if(a[i+j]!=b[j])flag=0;}if(flag==1){break;}}}if(flag!=1)return -1;elsereturn i+1;}int main(){char a[100],b[100];int n;printf("Input a string:");gets(a);printf("Input another string:");gets(b);n=find(a,b);if(n!=-1)printf("Searching results:%d\n",n);elseprintf("Not found!\n");return 0;}#include<stdio.h>#include<string.h>int main(){char a[80];int b, i,j,t=1,tl,num=0;printf("Input a string:\n"); gets(a);for (i=0;i<strlen(a);i++){t=1;for (j=i+1;j<strlen(a);j++) {if (a[j]==a[i]){t++;}}if (i==0){tl=t;}else{if (t>tl){tl=t;num=i;}}}printf("%c:%d\n", a[num],tl); }#include<stdio.h>#include<string.h>int main(){printf("Input a string:");char save[2][100];int a, b, i, j;gets(save[0]);i=0;b=3;for (j = 0; j < strlen(save[0]); j++){if ((save[i][j] >= 'A'&& save[i][j] <= 'Z') || (save[i][j] >= 'a'&& save[i][j] <= 'z')) {save[i][j] += b;if (((save[i][j] >= 'A'&& save[i][j] <= 'Z') || (save[i][j] >= 'a'&& save[i][j] <= 'z')) == 0) {save[i][j] -= 26;}}} puts(save[0]); return (0); }#include <stdio.h>#include <string.h>int main(void){printf("Input M,T,U,F,D:");long int m, t, u, f, d;scanf("%ld%ld%ld%ld%ld", &m, &t, &u, &f, &d);printf("Input conditions of road:");char T[10000];int i, count = 1;for (i = 0; i < t; i++){scanf("%c", &T[i]);}long int realTime = m;i = 0;while (realTime > 0 && i < t){count++;switch (T[i++]){case'u':realTime -= (u + d);break;case'f':realTime -= (f + f);break;case'd':realTime -= (u + d);break;}if (realTime < 0){count--;}}printf("num=%ld\n", --count);return 0;}#include<stdio.h>#include<string.h>int main(){int n, i, j, k, o, e;printf("Input n:");scanf("%d", &n);printf("Input numbers:");char s[n], odd[n], even[n];for (i = 0, j = 0, k = 0; i < n; i++){scanf("%d", &s[i]);if (s[i] % 2 == 0) //even{even[k++] = s[i];e = k;}else{odd[j++] = s[i];o = j;}}even[e] = '\0'; odd[o] = '\0';for (i = 0; i < o; i++){if (i == 0){printf("%d", odd[i]);}else{printf(",%d", odd[i]);}}printf("\n");for (i = 0; i < e; i++){if (i == 0){printf("%d", even[i]);}else{printf(",%d", even[i]);}}return 0;}#include<stdio.h>#include<string.h>int main(){printf("Input the first string:"); char a[80],b[80];gets(a);if (strlen(a)!=1)printf("Input the second string:"); else{printf("Input a character:\n"); }gets(b);char *p=strstr(a,b);if (p){printf("Yes\n");}else{printf("No\n");}return 0;}#include <stdio.h>#include <string.h>int main(){char s[][10]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"}; char ss[10];int i;printf("Please enter a string:\n");gets(ss);for (i=0;i<=6;i++)if (strcmp(ss,s[i])==0){printf("%s is %d\n",ss,i);return 0;}printf("Not found!\n");return 0;}#include<stdio.h>typedef struct Mytime{int hour; int min; int sec;}T;int main(){T t1, t2, t3;int sec1=0, sec2=0, sec3=0;printf("Input time one:(hour,minute):");scanf("%d,%d", &t1.hour, &t1.min);printf("Input time two: (hour,minute):"); scanf("%d,%d", &t2.hour, &t2.min);sec1 = t1.hour * 3600 + t1.min * 60 + 0;sec2 = t2.hour * 3600 + t2.min * 60 + 0;if( sec1 >= sec2 )sec3 = sec1 - sec2;elsesec3 = sec2 - sec1;t3.hour = sec3 / 3600;sec3 %= 3600;t3.min = sec3 /60;t3.sec = sec3 %60;printf("%dhour,%dminute\n", t3.hour, t3.min); return 0;}#include<stdio.h>typedef struct winners{char name[20];int finalScore;int classScore;char work;char west;int paper;int scholarship;} WIN;int main(){printf("Input n:");int n,i;scanf("%d",&n);WIN stu[n];for (i=0;i<n;i++){printf("Input name:");scanf("%s",stu[i].name);printf("Input final score:");scanf("%d",&stu[i].finalScore);printf("Input class score:");scanf("%d",&stu[i].classScore);getchar();printf("Class cadre or not?(Y/N):");scanf("%c",&stu[i].work);getchar();printf("Students from the West or not?(Y/N):");scanf("%c",&stu[i].west);getchar();printf("Input the number of published papers:");scanf("%d",&stu[i].paper);stu[i].scholarship=0;if (stu[i].finalScore>80 && stu[i].paper >=1) stu[i].scholarship+=8000;if (stu[i].finalScore>85 && stu[i].classScore> 80) stu[i].scholarship+=4000;if (stu[i].finalScore>90) stu[i].scholarship+=2000;if (stu[i].finalScore>85 && stu[i].west=='Y') stu[i].scholarship+=1000;if (stu[i].classScore> 80 && stu[i].work=='Y') stu[i].scholarship+=850;printf("name:%s,scholarship:%d\n",stu[i].name,stu[i].scholarship);}int ts=stu[0].scholarship,k;for (i=1;i<n;i++){if (ts<stu[i].scholarship){k=i;}}printf("%s get the highest scholarship %d\n",stu[k].name,stu[k].scholarship); return 0;}#include <stdio.h>#include <stdlib.h>#include <string.h>#include <ctype.h>int main(){char c1,c2;printf("please input the first letter of someday:\n");scanf(" %c",&c1);c1= tolower(c1);switch(c1){case 'm':printf("monday\n");break;case 'w':printf("wednesday\n");break;case 'f':printf("friday\n");break;case 't':printf("please input second letter:\n");scanf(" %c",&c2);if (c2 =='u'){printf("tuesday\n");break;}else if (c2 == 'h'){printf("thursday\n");break;}else//没有这条语句就会在这种情况下执行下一个case中的前两条语句,导致多输出一个please input second letter:{printf("data error\n");break;}case 's':printf("please input second letter:\n");scanf(" %c",&c2);if (c2=='a'){printf("saturday\n");break;}else if (c2=='u'){printf("sunday\n");break;}else{printf("data error\n");break;}default :printf("data error\n");break;}return 0; }。

智慧树知到程序设计基础(C语言)测试第五章单元测试参考答案

智慧树知到程序设计基础(C语言)测试第五章单元测试参考答案

智慧树知到程序设计基础(C语言)测试第五章单元测试参考答案•总题数: 101【判断题】 (10分)在C语言中,逻辑运算符“&&”比“||”的优先级高()。

A.错B.对正确本题总得分10分2【判断题】 (10分)将数学式:a=b或a<c ,写为C语言的表达式为a=b||a<c()。

A.错B.对正确本题总得分10分3【单选题】 (10分)已知字母’A’的ASCll码值为65,若变量c为char 型,下列不能正确判断出c为大写字母的表达式是()。

A.(c>=65)&&(c<=91)B.!(c>=’A’||c<=’Z’)C.(c+32)>=’a’&&(c+32)<=’z’D.c>=’A’&& c<=’Z’正确本题总得分10分4【单选题】 (10分)有下列程序,程序运行后的输出结果是()。

#include <stdio.h>int main(){int x=1,y=0;if (!x) y++;else if (x==0)if (x) y+=2;else y+=3;printf("%d",y);return 0;}A.0B.3C.1D.2正确本题总得分10分5【单选题】 (10分)有下列程序,程序运行后的输出结果是()。

int a=3,b;if (a>0) b=1;else b=-1;b++;printf("%d",b);A.2B.0C.1D.-1正确本题总得分10分6【单选题】 (10分)有下列程序,程序运行后的输出结果是()。

#include <stdio.h>int main(){int x=0,y=2, z=3;switch(x){case 0: switch(y==2){case 1: printf("*"); break;case 2: printf("%"); break;}case 1: switch(z){case 1: printf("$");case 2: printf("*"); break;default: printf("#");}}}A.*$B.*%C.**D.*#正确本题总得分10分7【判断题】 (10分)C语言中条件表达式结果为0表示假,为1表示真。

《高级语言程序设计》第01-17章在线测试

《高级语言程序设计》第01-17章在线测试

《高级语言程序设计》第03章在线测试《高级语言程序设计》第03章在线测试剩余时间:59:54答题须知:1、本卷满分20分。

2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。

3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。

第一题、单项选择题(每题1分,5道题共5分)1、要把高级语言编写的源程序转换为目标程序,需要使用:A、编辑程序B、驱动程序C、诊断程序D、编译程序2、以下选项中,属于C语言的数据类型是:A、复数型B、逻辑型C、双精度型D、集合型3、属于低级语言的计算机语言是( )。

A、机器语言B、汇编语言C、Java语言D、Pascal语言4、调试C程序时正确的步骤应当是()。

A、编辑、编译、链接和运行B、编辑、链接、编译和运行C、链接、编辑、编译和运行D、编辑、链接、编译和运行5、下列不能表示常量大写英文字母A的是()。

A、常量:‘A’B、常量:“A”C、常量:‘\x41’D、常量:‘\101’第二题、多项选择题(每题2分,5道题共10分)1、下列常数中能作为C的常量的是:A、0x4B、2.5e-2C、33D、03A2、对于16位系统中,C语言中整数 -8在内存中的错误存储形式是:A、1111 1111 1111 1000B、1000 0000 0000 0000C、1000 0000 0000 1000D、1111 1111 1111 01113、不能将高级语言编写的源程序转换成目标程序的是:A、编程程序B、编译程序C、解释程序D、链接程序4、关于C语言程序的语句,正确的说法是( )。

A、一条语句只能占一行B、一行可以书写多条语句C、语句的结束标识符是句号D、建议每条语句占一行、结构化程序有3种基本结构组成的算法可以完成任何复杂的任务。

正确错误C程序中正确错误程序是由一个或多个函数组成。

正确错误类型的变量只能存放一个字符。

正确错误、字符串常量不可能包含单个字符。

c语言在线试题及答案

c语言在线试题及答案

c语言在线试题及答案1. 题目1:以下哪个关键字用于定义一个结构体?- A) struct- B) union- C) enum- D) typedef答案:A2. 题目2:C语言中,以下哪个选项不是合法的变量名?- A) _myVar- B) my_var- C) 123myVar- D) my-var答案:D3. 题目3:以下哪个选项正确地表示了C语言中的字符串字面量? - A) "Hello"- B) 'Hello'- C) {"Hello"}- D) ["Hello"]答案:A4. 题目4:在C语言中,以下哪个语句用于在循环中终止循环? - A) break- B) continue- C) return- D) exit答案:A5. 题目5:以下哪个函数用于计算浮点数的平方根?- A) pow- B) sqrt- C) fabs- D) floor答案:B6. 题目6:在C语言中,以下哪个选项是正确的二进制文件打开模式? - A) "r"- B) "w"- C) "a"- D) "rb"答案:D7. 题目7:以下哪个选项是C语言中合法的数组声明?- A) int arr[10];- B) int arr[] = {1, 2, 3};- C) int arr[5] = {1, 2, 3};- D) int arr[] = {1, 2, 3, 4, 5, 6};答案:A8. 题目8:以下哪个选项不是C语言中的运算符?- A) %- B) &&- C) ::- D) ||答案:C9. 题目9:以下哪个关键字用于定义一个函数?- A) function- B) def- C) void- D) int答案:C10. 题目10:在C语言中,以下哪个选项是正确的宏定义? - A) #define PI 3.14159- B) #define PI = 3.14159- C) #define PI = 3.14159- D) #define PI 3.14159;答案:A。

中国大学mooc《C语言程序设计(郑州轻工业大学) 》满分章节测试答案

中国大学mooc《C语言程序设计(郑州轻工业大学) 》满分章节测试答案

titleC语言程序设计(郑州轻工业大学) 中国大学mooc答案100分最新版content点击这里,复制通过码第一章绪论第一章单元测验1、通常把高级语言源程序翻译成目标程序的程序称为( )。

答案: 编译程序2、关于C语言,下面叙述不正确的是()。

答案: 不用编译可以直接运行。

3、程序的开发步骤中不包括()。

答案: 编译链接4、 zzuliOJ的1000:从今天开始入坑C语言通过码答案: ikJ3Wx00syCxTCfJJpvCjVRSePQ5、 zzuliOJ的1001:整数a+b 通过码答案: jkJ2W0pnsnCxTCfJJpvCjVRSePU6、 zzuliOJ1002: 简单多项式求值通过码答案: g0QlCkxntSyxTCfJJpvCjVRSePY第二章简单C程序设计第二单元测验1、关于定点数和浮点数的说法,下列说法错误的是()。

答案: 浮点数表示的数即是数值的精确值2、以下哪种运算能从变量x中取得十进制最低位的数字()。

答案: x % 103、以下哪个数字的值最大()。

答案: 1e24、设有变量定义: float x=2.5; double y=6.0; 则表达式 (int)x / y的值为( )。

(如果结果是浮点类型,用小数点后一位数字表示)答案: 3.05、变量的名字代表内存中的存储单元;变量名和内存中的存储单元相对应,通过变量名来存、取存储单元的内容。

答案: 正确6、变量被定义后没有赋值,其值不可以使用,是内存中残留的垃圾值。

答案: 正确7、变量是在程序执行期间其值可以改变的量,必须先定义后使用。

答案: 正确8、当赋值语句右边表达式类型与左边变量类型不一致时,以右边表达式的值作为赋值表达式的值。

答案: 错误9、 zzuliOJ1003:两个整数的四则运算通过码答案: ikcgXkln5yyxTCfJJpvCjVRSePc10、 zzuliOJ1004:三位数的数位分离通过码答案: iUUkWxg2s3CxTCfJJpvCjVRSePA11、 zzuliOJ1005:整数幂通过码答案: gx5zX082t3SxTCfJJpvCjVRSePE12、 zzuliOJ1006:求等差数列的和通过码答案: 2B8gCk5k5SKxTCfJJpvCjVRSePI13、 zzuliOJ1007:鸡兔同笼通过码答案: iUNzXx015nCxTCfJJpvCjVRSePM14、 zzuliOJ1008:美元和人民币通过码答案: ihJzCkoyvXGxTCfJJpvCjVRSePw15、 zzuliOJ1009:求平均分通过码答案: 2BFyWhs2vHexTCfJJpvCjVRSeP016、 zzuliOJ1010:求圆的周长和面积通过码答案: jBRzD043syWxTCfJJpvCjVRSefQ17、 zzuliOJ1011:圆柱体表面积通过码答案: ixcjXxxnsHaxTCfJJpvCjVRSefU18、 zzuliOJ1012:求绝对值通过码答案: iRV2UR8x5iSxTCfJJpvCjVRSefY19、 zzuliOJ1013:求两点间距离通过码答案: 2hEgXEczsCyxTCfJJpvCjVRSefc20、 zzuliOJ1014:求三角形的面积通过码答案: 2BF1Xkg74iexTCfJJpvCjVRSefA21、 zzuliOJ1015:计算时间间隔通过码答案: 2RMnWUk6sXSxTCfJJpvCjVRSefE22、 zzuliOJ1015:银行利率通过码答案: 3xZxWBswvCSxTCfJJpvCjVRSefI第二章简单C程序设计小练习-不计分1、以下哪种运算能从变量x中取得十进制最低位的数字()。

C语言在线测试题目及答案

C语言在线测试题目及答案

C语言在线测试题目及答案SANY GROUP system office room 【SANYUA16H-SANYHUASANYUA8Q8-第一章、第二章、第三章第一题、单项选择题(每题1分,5道题共5分)1、在以下关于C语言的叙述中,正确的说法是: BA、C语言比汇编语言快B、C语言比BASIC语言快C、C语言比BASIC语言和汇编语言都快D、C语言比BASIC语言慢2、在C语言中,不正确的常量是: BA、0xf6B、0876C、.5e-6D、 3e 23、属于低级语言的计算机语言是( )。

BA、机器语言B、汇编语言C、Java语言D、Pascal语言4、对于链接,正确的说法为()。

DA、链接是将源程序和库函数链接到一起,生成可执行程序。

B、链接是将源程序、目标程序和其他源程序链接到一起,生成可执行程序。

C、链接是将源程序、库函数和其他源程序链接到一起,生成可执行程序。

D、链接是将目标程序、库函数和其他目标程序链接到一起,生成可执行程序。

5、下列不能表示常量大写英文字母A的是()。

BA、常量:‘A’B、常量:“A”C、常量:‘\x41’D、常量:‘\101’第二题、多项选择题(每题2分,5道题共10分)1、对于16位系统中,C语言中整数 -8在内存中的错误存储形式是: BCDA、1111 1111 1111 1000B、1000 0000 0000 0000C、1000 0000 0000 1000D、1111 1111 1111 01112、下列关于C语言用户标识符的叙述中,不正确的叙述是: ACDA、用户标识符中可以出现下划线和中划线(减号)B、用户标识符中不可以出现中划线,但可以出现下划线C、用户标识符中可以出现下划线,但不可以放在用户标识符的开头D、用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头3、关于C语言程序的语句,正确的说法是( )。

BDA、一条语句只能占一行B、一行可以书写多条语句C、语句的结束标识符是句号D、建议每条语句占一行4、与汇编程序相比,C语言程序的优点包括( )。

《计算机组成原理》第01-10章在线测试答案

《计算机组成原理》第01-10章在线测试答案

《计算机组成原理》第01章在线测试《计算机组成原理》第01章在线测试剩余时间:59:54答题须知:1、本卷满分20分。

2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。

3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。

第一题、单项选择题(每题1分,5道题共5分)1、完整的计算机系统应包括______。

A、运算器、存储器、控制器B、外部设备和主机C、主机和实用程序D、配套的硬件设备和软件系统2、计算机系统中的存储器系统是指______。

A、RAM存储器B、ROM存储器C、主存储器D、主存储器和外存储器3、冯•诺依曼机工作方式的基本特点是______。

A、多指令流单数据流B、按地址访问并顺序执行指令C、堆栈操作D、存储器按内部选择地址4、邮局把信件进行自动分拣,使用的计算机技术是______。

A、机器翻译B、自然语言理解C、模式识别D、机器证明5、计算机高级程序语言一般分为编译型和解释型两类,在Java、Fortran和C语言中,属于编译语言的是______。

A、全部B、FortranC、CD、Fortran和C第二题、多项选择题(每题2分,5道题共10分)1、冯•诺依曼原理的基本思想是:A、采用二进制形式表示数据和指令。

指令由操作码和地址码组成。

B、将程序和数据存放在存储器中,使计算机在工作时从存储器取出指令加以执行,自动完成计算任务。

这就是“存储程序”和“程序控制”(简称存储程序控制)的概念。

C、指令的执行是顺序的,即一般按照指令在存储器中存放的顺序执行,程序分支由转移指令实现。

D、计算机由存储器、运算器、控制器、输入设备和输出设备五大基本部件组成,并规定了5部分的基本功能。

2、计算机总线结构分为:A、单总线结构B、双总线结构C、多总线结构D、全总线结构3、理解计算机的概念,应从以下几个方面:A、以电子器件为物质基础,即研究的对象是电子数字计算机(Digital Computer)B、不需要人的直接干预,说明具有自动化能力,其前提是存储程序C、处理各种数字化信息,计算机以二进制编码作为数字化编码及运算的基础D、具有算逻运算能力,基本运算操作是算术和逻辑运算E、计算机是快速工具,主要取决于两个因素:一是电子器件,二是存储程序F、由硬件和软件组成4、目前常见的系统软件有:A、操作系统B、各种语言处理程序C、数据库管理系统D、各种服务性程序5、计算机系统的主要技术指标有:A、机器字长B、数据通路宽度C、主存储器容量D、运算速度第三题、判断题(每题1分,5道题共5分)1、任何可以由软件实现的操作也可以由硬件来实现正确错误2、固件就功能而言类似于软件,而从形态来说又类似于硬件正确错误3、在计算机系统的层次结构中,微程序级属于硬件级,其他四级都是软件级正确错误4、面向高级语言的机器是完全可以实现的正确错误5、电子数字计算机中处理的信息是在时间上离散的数字量,运算的过程是不连续的;电子模拟计算机中处理的信息是连续变化的物理量,运算的过程是连续的。

C语言程序设计在线测试

C语言程序设计在线测试

C语言程序设计在线测试 The pony was revised in January 2021题目描述定义了一个含8个元素的int数组,调用包含指针的函数分别实现输入、计算最大值,之后输出结果。

请将下列程序代码补充完整,并提交。

#include <>int main(){int a[8];void input_array(int * p, int n);int array_max(int * p, int n);input_array(____,_____);//调用函数inout_array()输入数组各元素值printf("%d\n",________);//调用函数array_max()计算最大值,并输出return 0;}void input_array(int * p, int n){//请补充代码}int array_max(int * p, int n) {//请补充代码}输入输入8个整数,用空格分开输出输出数组中的最大值样例输入1 2 3 5 8 7 6 4样例输出8#include <>int main(){int a[8];void input_array(int * p, int n);int array_max(int * p, int n);input_array(a, 8);//调用函数inout_array()输入数组各元素值printf("%d\n",array_max(a,8));//调用函数array_max()计算最大值,并输出 return 0;}void input_array(int * p, int n){for (int i = 0; i < n; i++)scanf("%d", &p[i]);}int array_max(int * p, int n){int i,max;max = 0;for (i = 0; i < n; i++)if (*(p + i)>max)max = *(p + i);return max;}定义了一个4行2列的int类型二维数组,调用包含指针的函数分别实现输入、计算最大值,之后输出结果。

《C语言程序设计》第05章在线测试

《C语言程序设计》第05章在线测试

A B
C D
int x=2,y
A B
C D 、以下合法的赋值语句是:
A B
C D
int a=()
A B
C D 、下列算术运算符中,只能在两个整型数据之间进行的运算符是。

A B
C D
A、3.500000
B、3
C、2.000000
D、3.000000
3、下列能输出字符B的是():
A、putchar(ˊ\x42ˊ);
B、putchar(ˊ\x41ˊ);
C、putchar(66);
D、putchar(ˊ\x41ˊ+1);
4、已知“int a=1;char b=65; float c=2.0;double d=3.5;”。

则下述赋值表达式结果为整型的是()。

A、a=3.2;
B、c=(int)3.2;
C、a=c+d;
D、c=a+b;
E、b=a+b;
F、b=(int)(c+d);
5、已知“int n;”。

若通过scanf函数为变量n输入值,则合法的输入格式控制符为( )。

A、%d
B、%f
C、%o
D、%x
E、%c
F、%g
第三题、判断题(每题1分,5道题共5分)
正确错误是合法的
正确错误、赋值运算符的优先级低于所有的算术运算符。

正确错误int x=5;
正确错误、强制类型转换,并不改变原表达式本身的类型。

正确错误。

C语言程序设计习题集(有答案)

C语言程序设计习题集(有答案)

C语言程序设计习题集(有答案) C语言程序设计习题集(有答案)C语言是一门广泛应用于软件开发和系统编程领域的计算机程序设计语言。

掌握C语言编程的基础知识和技能对于从事相关行业的人来说至关重要。

为了帮助读者加深对C语言的理解和应用,本文提供了一份C语言程序设计习题集,每道习题都附有答案,供读者参考和自我检测。

1. 输入输出问题描述:编程实现一个简单的输入输出程序。

要求从标准输入读入一个整数,然后输出该整数,并换行。

解答:```c#include <stdio.h>int main() {int num;scanf("%d", &num);printf("%d\n", num);return 0;}```2. 条件判断问题描述:编写一个程序,判断一个给定的整数是否为偶数。

如果是偶数,则输出"Even",否则输出"Odd"。

解答:```c#include <stdio.h>int main() {int num;scanf("%d", &num);if (num % 2 == 0) {printf("Even\n");} else {printf("Odd\n");}return 0;}```3. 循环结构问题描述:编写一个程序,计算并输出1到100之间所有偶数的和。

解答:```c#include <stdio.h>int main() {int sum = 0;for (int i = 2; i <= 100; i += 2) {sum += i;}printf("Sum: %d\n", sum);return 0;}```4. 数组问题描述:编写一个程序,从键盘输入5个整数,然后按照输入的顺序将它们输出。

南开大学 12秋学期《C语言程序设计》在线作业

南开大学 12秋学期《C语言程序设计》在线作业

12秋学期《C语言程序设计》在线作业试卷总分:100 测试时间:-- 试卷得分:100 •、单选题(共40 道试题,共80 分。

)得分:801. 变量的指针,其含义是指该变量的( )A. 地址B. 值C. 名字D. 标识满分:2 分得分:22. 下列哪个是读写文件出错检测函数( )。

A. ferrorB. clearerrC. feofD. fwrite满分:2 分得分:23. 下面正确的字符常量是( )A. "c"B. "\\"C. 'W'D. ''(中间没有空格)满分:2 分得分:24. 若有定义char str[]= “very good”,则str的长度为( )A. 8B. 9C. 10D. 11满分:2 分得分:25. 当把以下四个表达式用作if语句的控制表达式时,有一个选项与其它三个选项含义不同,这个选项是A. k%2B. k%2==0C. (k%2)!=0D. !(k%2==0)满分:2 分得分:26. 若调用fputc函数输出字符成功,则其返回值是( )A. EOFB. 1C. 0D. 输出的字符满分:2 分得分:27. 设有如下程序 # include<stdio.h> main() { char ch1='A',ch2='a'; printf("%c\n",(ch1,ch2)); } 则下列叙述正确的为( )A. 程序的输出结果为大写字母AB. 程序的输出结果为小写字母aC. 运行时产生错误信息D. 格式说明符的个数少于输出项的个数,编译出错满分:2 分得分:28. 在C语言中,char型数据在内存中的存储形式是( )A. 补码B. 反码C. 原码D. ASCII码满分:2 分得分:29. 若有以下定义语句:int a[10]={1,2,3,4,5,6,7,8,9,10}; 则下列哪个是对该数组元素的正确引用( )A. a[10]B. a[a[3]-5]C. a[a[9]]D. a[a[4]+4]满分:2 分得分:210. 若定义语句:int a=7;float x=2.5;y=4. 7; 则表达式x+a%3*(int)(x+y)%2/4的值是( )A. 2.500000B. 2.750000C. 3.500000D. 0.000000满分:2 分得分:211. fwrite函数的一般调用形式是( )A. fwrite(buffer,count,size,fp)B. fwrite(fp,size,count,buffer)C. fwrite(fp,count,size,buffer)D. fwirte(buffer,size,count,fp)满分:2 分得分:212. 若执行fopen函数时发生错误,则函数的返回值是( )A. 地址值B. nullC. 1D. EOF满分:2 分得分:213. 以下叙述中错误的是:A. 局部变量的定义可以在函数体内部B. 全局变量的定义可以在函数以外的任何位置C. 同一程序中,全局变量和局部变量不能同名D. 函数的形参属于局部变量满分:2 分得分:214. for (i=2; i==0; ) printf(“%d” , i--) ; 以上程序段的循环次数是( )A. 2次B. 无限次C. 0次D. 1 次满分:2 分得分:215. 下面4个选项中,均是不合法的用户标识符的选项是( )A. A P_0 doB. float a0 _AC. b-a 123 intD. _123 temp INT满分:2 分得分:216. 下面不正确的字符串常量是( )A. abc'B. "12'12"C. "0 "D. " "满分:2 分得分:217. 若以”a+”方式打开一个已存在的文件,则以下叙述正确的是( )。

《C语言程序设计》第05章在线测试

《C语言程序设计》第05章在线测试

《C语言程序设计》第05章在线测试《C语言程序设计》第05章在线测试剩余时间:55:19答题须知:1、本卷满分20分。

2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。

3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。

第一题、单项选择题(每题1分,5道题共5分)1、设x和y均为int型变量,则以下语句:x=x+y; y=x-y; x=x-y; 的功能是:A、把x和y按从大到小排列B、把x和y按从小到大排列C、x中为原来x和y的值的和D、交换x和y中的值2、已说明int a=256,执行语句printf(”%x” ,a);的结果是:A、100B、256C、0ffeD、00ff3、已有int x=2,y=7;则printf("%d",x+y==6);的输出结果是:A、0B、3C、9D、24、以下合法的赋值语句是:A、x=y=100;B、d+5=10;C、x+y=100;D、c=int(a+b);5、设int x=10,y=3,则语句printf(“%d%d\n”,x+y,x-y);的输出结果是():A、10,3B、13,7C、137D、103第二题、多项选择题(每题2分,5道题共10分)1、x、y、z被定义为int 型常量,若从键盘给 x、y、z输入数据,不正确的输入语句是:A、input x、y、z;B、scanf(” %d%d%d”,&x,&y,&z);C、scanf(” %d%d%d”,x, y, z);D、read (” %d%d%d”,&x,&y,&z);2、已知“int a, b; scanf ( "%d%d", &a, &b );”。

若为a和b输入值,可以作为输入分隔符的是( )。

A、逗号B、空格C、回车D、Tab键3、下列属于C语言标准库函数的为()。

北师大c程序设计考试题及答案

北师大c程序设计考试题及答案

北师大c程序设计考试题及答案北师大C程序设计考试题及答案一、选择题(每题2分,共20分)1. 在C语言中,下列哪个选项是正确的标识符?A. 2variableB. variable2C. -variableD. variable-答案:B2. 下列哪个选项不是C语言的基本数据类型?A. intB. floatC. charD. string答案:D3. 在C语言中,下列哪个选项表示“或”运算?A. &&B. ||C. !D. &答案:B4. 下列哪个选项是C语言中的逻辑运算符?A. +B. -C. *D. &&答案:D5. 在C语言中,下列哪个选项是正确的字符串声明?A. char str[10] = "Hello";B. char str = "Hello";C. char str[10] = 'Hello';D. char str = 'Hello';答案:A6. 在C语言中,下列哪个选项是正确的数组声明?A. int array[5] = {1, 2, 3, 4, 5};B. int array = {1, 2, 3, 4, 5};C. int array[5] = 1, 2, 3, 4, 5;D. int array = 1, 2, 3, 4, 5;答案:A7. 在C语言中,下列哪个选项是正确的函数声明?A. int add(int a, int b);B. int add(int, int);C. int add();D. int add(int a, b);答案:A8. 在C语言中,下列哪个选项表示“不等于”运算?A. ==B. !=C. =D. <=答案:B9. 在C语言中,下列哪个选项是正确的指针声明?A. int *ptr;B. int ptr*;C. *int ptr;D. ptr int;答案:A10. 在C语言中,下列哪个选项是正确的结构体声明?A. struct Student {int id;char name[50];};B. struct {int id;char name[50];} Student;C. struct Student {int id;char name;};D. struct {int id;char name[50];} student;答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用________运算符可以进行按位与运算。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《C语言程序设计》第05章在线测试剩余时间:49:02
答题须知:1、本卷满分20分。

2、答完题后,请一定要单击下面的“交卷”按钮交卷,否则无法记录本试卷的成绩。

3、在交卷之前,不要刷新本网页,否则你的答题结果将会被清空。

第一题、单项选择题(每题1分,5道题共5分)
1、设x和y均为int型变量,则以下语句:x=x+y; y=x-y; x=x-y; 的功能是:
A、把x和y按从大到小排列
B、把x和y按从小到大排列
C、x中为原来x和y的值的和
D、交换x和y中的值
2、已有int x=2,y=7;则printf("%d",x+y==6);的输出结果是:
A、0
B、3
C、9
D、2
3、以下合法的赋值语句是:
A、x=y=100;
B、d+5=10;
C、x+y=100;
D、c=int(a+b);
4、已说明int a=256,执行语句printf(”%x”,a);的结果是()
A、100
B、256
C、0ffe
D、00ff
5、下列算术运算符中,只能在两个整型数据之间进行的运算符是( )。

A、*
B、+
C、/
D、%
第二题、多项选择题(每题2分,5道题共10分)
1、x、y、z被定义为int 型常量,若从键盘给 x、y、z输入数据,不正确的输入语句是:
A、input x、y、z;
B、scanf(”%d%d%d”,&x,&y,&z);
C、scanf(”%d%d%d”,x, y, z);
D、read (”%d%d%d”,&x,&y,&z);
2、假定x和y均为double类型,则表达式x=2,y=x+3/2的不正确值是:
A、3.500000
B、3
C、2.000000
D、3.000000
3、下列能输出字符B的是():
A、putchar(ˊ\x42ˊ);
B、putchar(ˊ\x41ˊ);
C、putchar(66);
D、putchar(ˊ\x41ˊ+1);
4、已知“int a=1;char b=65; float c=2.0;double d=3.5;”。

则下述赋值表达式结果为整型的是()。

A、a=3.2;
B、c=(int)3.2;
C、a=c+d;
D、c=a+b;
E、b=a+b;
F、b=(int)(c+d);
5、已知“int n;”。

若通过scanf函数为变量n输入值,则合法的输入格式控制符为( )。

A、%d
B、%f
C、%o
D、%x
E、%c
F、%g
第三题、判断题(每题1分,5道题共5分)
1、若变量c为char类型,能正确判断出c为小写字母的表达式是: (c>=ˊaˊ)&&(c<=ˊzˊ)。

正确错误
2、a=b=58是合法的C语言赋值表达式。

正确错误
3、赋值运算符的优先级低于所有的算术运算符。

正确错误
4、若有int x=5;,则(float)x就把x转换为float类型了。

正确错误
5、强制类型转换,并不改变原表达式本身的类型。

正确错误。

相关文档
最新文档