C语言测试题
c语言测试题目及答案
c语言测试题目及答案一、选择题(每题2分,共20分)1. 下列哪个关键字不是C语言的控制语句?A. ifB. switchC. whileD. loop答案:D2. C语言中,一个整型变量int占用的字节数是多少?A. 1B. 2C. 4D. 8答案:C3. 在C语言中,以下哪个运算符用于计算两个数的乘方?A. *B. /C. ^D. %答案:C4. 下列哪个函数用于计算一个数的绝对值?A. abs()B. max()C. min()D. pow()答案:A5. 在C语言中,以下哪个是正确的字符串字面量?A. "Hello World"B. 'Hello World'C. {"Hello World"}D. ["Hello World"]答案:A6. 在C语言中,以下哪个是正确的数组声明?A. int array[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};B. int array[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};C. int array = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};D. int array[10] = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9;答案:B7. 在C语言中,以下哪个是正确的函数声明?A. void myFunction(int x, int y);B. int myFunction();C. void myFunction(int x, int y) {}D. int myFunction(int x, int y);答案:A8. 在C语言中,以下哪个是正确的递归函数调用?A. func(5);B. func(func(5));C. func(func(5, 3));D. func(5, 3);答案:B9. 下列哪个是C语言中合法的变量名?A. 2variableB. variable-nameC. variable#nameD. variable_name答案:D10. 在C语言中,以下哪个是正确的结构体声明?A. struct Person { int age; char name[50]; };B. struct { int age; char name[50]; };C. Person { int age; char name[50]; };D. Person struct { int age; char name[50]; };答案:A二、填空题(每空2分,共20分)1. C语言中,用于定义一个函数的关键字是________。
c语言大期末考试题库及详解答案
c语言大期末考试题库及详解答案一、选择题1. C语言中,以下哪个关键字用于定义一个函数?A. intB. voidC. returnD. function答案:A2. 在C语言中,哪个运算符用于取模?A. /B. %C. *D. -答案:B3. 如果一个变量声明为 `int x;`,那么x的类型是什么?A. 浮点型B. 整型C. 字符型D. 双精度型答案:B4. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. variable!2D. variable-2答案:B5. 在C语言中,以下哪个语句用于结束一个循环?A. continueB. breakC. returnD. exit答案:B二、填空题6. C语言中,一个基本的程序结构包括_____、_____和_____。
答案:预处理指令;函数定义;程序的主体7. 以下代码段的输出结果是_____。
```c#include <stdio.h>int main() {int a = 5, b = 10;printf("%d", a + b);return 0;}```答案:158. 在C语言中,若要定义一个字符数组来存储字符串"Hello",正确的声明方式是_____。
char str[] = "Hello";```答案:char str[6];9. 下列代码段中,变量x的最终值是_____。
```cint x = 10;x += x * x - 3 * x + 2;```答案:11210. C语言中,若要计算两个数的乘积,可以使用运算符_____。
答案:*三、简答题11. 解释C语言中指针的概念及其用途。
答案:指针是一种变量,它存储了另一个变量的内存地址。
指针用于访问和操作内存地址中的数据,可以实现动态内存分配、数组操作、函数参数传递等。
C语言测试题及答案
C语言测试题及答案一、单选题(每题3分)1、下列语言不属于计算机语言的是()A、机器语言B 、汇编语言C 、高级语言D、低级语言(正确答案)2、下列不属于C 语言的特点的是()A、是一种结构化语言B、表现能力和处理能力较差(正确答案)C 、效率高,移植性强D、可直接访问内存物理地址3、C 语言程序能够在不同的操作系统下运行,这说明其具有良好的()A 、兼容性B、操作性C 、适应性D、移植性(正确答案)4、下列关于C语言的说法,正确的是()A、C语言比其他语言高级B 、C语言源程序可以直接被计算机执行C 、C语言出现最晚,各方面优于其他语言D 、C语言是用接近人们习惯的自然语言和数学语言作为语言的表达形式(正确答案)5、以下不是C 语言中的关键字的是()A 、elseB 、shortC、true(正确答案)D 、void6、C 程序经过编译、链接后生成的可执行文件的扩展名是()A 、.cB 、.objC、.exe(正确答案)D 、.syS7、把高级语言编写的源程序转换为目标程序,需要使用()A、驱动程序B、编辑程序C、诊断程序D、编译程序(正确答案)8、C 语言程序的执行,总是起始于()A、程序中的第一条可执行语句B、程序中的第一个函数C、main()函数(正确答案)D、包含文件中的第一个函数9、以下叙述中,正确的是()A、语句是构成(正确答案)C程序的基本单位B 、一个函数可以没有参数C 、main() 函数必须放在其他函数之前D、所有被调用的函数一定要在调用之前进行定义10、构成C语言程序的基本单位是()A 、语句B、函数(正确答案)C 、过程D 、复合语句11、计算机能直接识别的语言是()A 、机器语言(正确答案)B 、汇编语言C 、C语言D 、高级语言12、下列说法错误的是()A 、C程序中的每条语句都用分号作为结束符B 、C程序中的每条命令都用分号作为结束符(正确答案)C、C 程序中的变量遵循先定义,后使用的原则D 、C程序一般以小写字母书写,并且区分大小写13、下面有关C程序的说法中,正确的是()A 、C程序由符号构成B、C 程序由标识符构成C 、C程序由函数构成(正确答案)D 、C程序由C语句构成14、C语言中所有的关键字必须()A、小写(正确答案)B、大写C 、大小写均可D 、C语言中没有保留字15、在结构化程序中应尽量避免使用的语句是()A 、whileB 、do……whileC 、forD 、goto(正确答案)16、下列是C 语言的关键字是()A 、bacB 、IntC、char(正确答案)D 、Printf17、在每一个C程序中都必须包含的函数是()A 、nameB、main(正确答案)C 、MainD 、function18、以下叙述中,正确的是()A、花括号{}只能作为函数体的定界符B 、分号是C语句之间的分隔符,不是语句的一部分C 、C程序中注释部分可以出现在程序中任意合适的地方(正确答案)D、构成C程序的基本单位是函数,所有函数的命名都可以由用户命名19、以下选项中不属于C语言的数据类型的是()A 、signed short intB 、unsigned long intC 、unsigned intD 、long short(正确答案)20、下列能实现换行功能的格式符为()A 、”\t’B、’\n’(正确答案)C 、’\a'D 、’\k’21、下列不正确的转义字符是()A 、’\W”B、\”C 、’\0'D、’074’(正确答案)22、下列正确的字符串常量是()A、”W”(正确答案)B 、'abc’C 、Olympic GamesD 、’\n'23、在C 语言中,数字029是一个()A、八进制数B、十六进制数C、十进制数D、非法数(正确答案)24、下列的变量说明中,正确的是()A 、int i=j=1;B 、double float f,d;C、double a; (正确答案)D 、char:I;25、下列是合法的用户定义标识符是()A、908B 、putcharC、P_S (正确答案)D 、double26、以下C 语言标识符合法的是()A 、-5XB、name_1 (正确答案)C 、bow-1D 、#2327、假如给变量a和b都定义为浮点型,则下列正确的定义是()A 、int a;b;B 、float a,int b;C 、float a,b; (正确答案)D 、float a;b;28、已知int a=2;,则表达式(a+’E'-’A’)*3的值是 ( )A 、8B 、12C、18(正确答案)D 、2029、下列程序中不正确的语句是()A 、main(B 、int a,b,c:C、a=22:b=33 (正确答案)D 、{c=a+c;}30、下列各项中非法的赋值语句是()A、j++:B 、++(i+3 ); (正确答案)C 、x=j>0;D、n=(i=2,i++):二、判断题(每题1分)1、计算机可以直接识别C 语言程序语句。
c语言入门试题及答案
c语言入门试题及答案一、选择题1. 下列哪个是C语言的关键字?A) mainB) outputC) printD) if答案:D2. 在C语言中,用来声明整型变量的关键字是?A) intB) charC) floatD) double答案:A3. 下列哪个符号用于表示“等于”?A) ==B) !=C) >答案:A4. 在C语言中,用来表示字符类型的关键字是?A) intB) charC) floatD) double答案:B5. 下列哪个函数可以输出文本到屏幕上?A) scanfB) getcharC) printfD) gets答案:C二、填空题1. C语言中,整型变量的大小为________个字节。
答案:42. 下列代码的运行结果是什么?int x = 5;int y = 2;printf("%d", x % y);```答案:13. C语言中,用于标识单行注释的符号是________。
答案://4. 下列代码的运行结果是什么?```char name[10] = "John";printf("%s", name);```答案:John三、编程题1. 编写一个程序,接收用户输入的两个整数,并计算它们的和。
```c#include <stdio.h>int main() {int num1, num2;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);int sum = num1 + num2;printf("它们的和为:%d\n", sum);return 0;}```2. 编写一个程序,判断一个输入的整数是否为偶数。
```c#include <stdio.h>int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (num % 2 == 0) {printf("%d是一个偶数。
c语言测试题
c语言测试题1.题目一编写一个C语言程序,要求从键盘输入两个整数,然后输出它们的和。
解答:```c#include <stdio.h>int main() {int num1, num2;printf("请输入两个整数: ");scanf("%d %d", &num1, &num2);int sum = num1 + num2;printf("两数之和为:%d\n", sum);return 0;}```2.题目二编写一个C语言程序,要求从键盘输入一个整数,然后判断它是否为素数。
解答:```c#include <stdio.h>int isPrime(int num) {if (num <= 1) {return 0;}for (int i = 2; i * i <= num; i++) { if (num % i == 0) {return 0;}}return 1;}int main() {int num;printf("请输入一个整数: ");scanf("%d", &num);if (isPrime(num)) {printf("%d是素数\n", num);} else {printf("%d不是素数\n", num);}return 0;}```3.题目三编写一个C语言程序,要求实现冒泡排序算法对一个数组进行排序。
解答:```c#include <stdio.h>void bubbleSort(int arr[], int size) {for (int i = 0; i < size - 1; i++) {for (int j = 0; j < size - i - 1; j++) {if (arr[j] > arr[j + 1]) {int temp = arr[j];arr[j] = arr[j + 1];arr[j + 1] = temp;}}}}void printArray(int arr[], int size) {for (int i = 0; i < size; i++) {printf("%d ", arr[i]);}printf("\n");}int main() {int arr[] = {5, 2, 9, 1, 3};int size = sizeof(arr) / sizeof(arr[0]); printf("排序前的数组: ");printArray(arr, size);bubbleSort(arr, size);printf("排序后的数组: ");printArray(arr, size);return 0;}```以上是三个C语言测试题的解答,分别涉及输入输出、数学运算和数组排序等。
c语言测试题目及答案精选
c语言测试题目及答案精选c语言测试题目及答案篇一(c语言)是一个有结构化程序设计、具有变量作用域(variable scope)以及递归功能的过程式语言。
以下是我为大家搜寻整理的c语言测试题及答案解析,盼望能给大家带来关心!更多精彩内容请准时关注我们应届毕业生(考试)网!1.(a )是构成c语言程序的基本单位。
a、函数b、过程c、子程序d、子例程2.c语言程序从c 开头执行。
a、程序中第一条可执行语句b、程序中第一个函数c、程序中的main函数d、包含文件中的第一个函数3、以下说法中正确的是( c )。
a、c语言程序总是从第一个定义的函数开头执行b、在c语言程序中,要调用的函数必需在main( )函数中定义c、c语言程序总是从main( )函数开头执行d、c语言程序中的main( )函数必需放在程序的开头部分4.下列关于c语言的说法错误的是( b ) 。
a、c程序的工作过程是编辑、编译、连接、运行b、c语言不区分大小写。
c、c程序的三种基本结构是挨次、选择、循环d、c程序从main函数开头执行5.下列正确的标识符是(c)。
a、-a1b、a[i]c、a2_id、int t5~8题为相同类型题考点:标识符的命名规章只能由字母、数字、下划线构成数字不能作为标识符的开头关键字不能作为标识符选项a中的“-” ,选项b中“[”与“]”不满意(1);选项d中的int为关键字,不满意(3)6.下列c语言用户标识符中合法的是(b )。
a、3axb、xc、cased、-e2 e)union选项a中的标识符以数字开头不满意(2);选项c,e均为为关键字,不满意(3);选项d中的“-”不满意(1);7.下列四组选项中,正确的c语言标识符是( c )。
a、%xb、a+bc、a123d、123选项a中的“%” ,选项b中“+”不满意(1);选项d中的标识符以数字开头不满意(2)8、下列四组字符串中都可以用作c语言程序中的标识符的是( a)。
C语言测试题及答案
一、选择题1.语句int a=10,*point=&a; D 其值不为地址。
A. pointB. &aC. &pointD. *point2.若p为指针变量,y为变量,则y = *p++;的含义是 A A.y=*p;p++ B.y=(*p)++ C.y=p;p++ D.p++;y=*p 3.语句char str[]=”visual C++”;char *p=str;则p的值为 BA. ”visual C++”B.str的首地址C. \nD.”v”4.设有说明语句char *s[]={“student”,”Teacher”,”Father”,”Month”}, *ps=s[2];执行语句:printf(“%c,%s,%c”,*s[1],ps,*ps);则输出为AA.T,Father,FB.Teaher,F,FatherC. Teacher,Father,FatherD.语法错,无输出5.下列说明或赋值语句,不正确的是 CA. char *p;p=”Visual C++”;B. char p1[12]={‘v’,’i’,’s’,’u’};C. char p2[12];p2=”Visual C++”D. char p3[]=”Visual”;6.现有int b[3][4],*p;p=(int *)b;若要指针p指向b[2][3],以下正确的是 BA.p+=3*4+3B.p+=2*4+3C. p+=(3*4+3)*sizeof(int)D.p+=(2*4+3)*sizeof(int)7.语句int i,*p1,**p2;以下语句语法不正确的是 BA.p1=&i;B. p2=&i;C.p2=&p1;D.i=’\0x23’;8.如下图结构体说明和变量的定义,p指向a,q指向变量b.下面不能..把结点b连接到结点a之后的语句是 BC. p->next=&b;D.(*p).next=q;9.下面正确的语句是 AA. int a[3][4],(*p)[4]; p=a;B. int a[3][4],*p[4]; p=a;C. int a[3][4],*p; p=a;D. int a[3][4],**p;*p=a;10.以“追加”方式打开文本文件a:\aa.dat,下列语句中哪一个是正确的是 BA.fp=fopen("a:\\aa.dat","ab");B. fp=fopen("a:\\aa.dat","a");C. fp=fopen("a:\\aa.dat","r+");D. fp=fopen("a:\\aa.dat","w");11.设有函数定义:int f1(void){return 100,150;}调用函数f1()时, BA.函数返回值100B. 函数返回值150C. 函数返回二个值100和150D. 语句return 100,150;语法错.12.数组作为函数的形参时,把数组名作为实参,传递给函数的是 AA.该数组的首地址B. 该数组的元素个数C. 该数组中的各元素值D. 该数组的大小13.执行以下语句序列:则 Aenum {Sun,Mon,Tue,Wed,Thu,Fri,Sat}c1,c2; //Ac1=Mon; //Bprintf(“%d”,c1);A.输出1B.输出2C.输出0D. B行语法错14.执行以下语句序列:则 Cchar *p1=”Speaking”; //Achar *p2=”English”; //Bchar *p3=”a piece of cake”; //Cchar *str[]={p1,p2,p3}; //Dprintf(“%c”,*(str[0]+1));A.输出EnglishB.输出SpeakingC.输出pD. D行语法错二、填空题1.(2*2分=4分)下面程序的运行结果为16 、 2void main( ){static int a[3][2]={{12},{14,16},{1,2}};int *p=a[1];printf(“%d\n”,*(p+1));printf(“%d\n”,*(p+3));}2.(2*2分=4分)若有以下程序段,则*(*(b+2)+1)的值为11 ,*(*(p+1)+1)的值为7static int b[3][2]={1,3,5,7,9,11};int (*p)[2];p=b;3.(1*4分=4分)下面程序的运行结果为26#include<stdio.h>void sub(int *x,int i,int n){if(n<=i)sub(x,i,3*n);*x+=n++; //相当于*x=*x+(n++)}void main( ){int x=0;sub(&x,12,2);printf(“%d”,x);}4.(2*2分=4分)以下程序运行结果为_ Hello,world _、ello,world void main(){char *p,*q;char str[]="Hello,World\n";q = p = str;p++;printf(“%s\n”,q);printf(“%s\n”,p);}5. (1*4分=4分)以下程序运行结果是__121232343454_________ void main(){short ar[5]={1,2,3,4,5 };short * par=&ar[1];int i;for(i=0; i<4; i++){printf(“%d %d %d”,ar[i],par[i],*(ar+i));}}6.(2*2分=4分) 以下程序运行结果是__200 100_____void swap2(int *x,int *y){int t;t=*x;*x=*y;*y=t;}void main( ){ int a=100,b=200;swap2(&a,&b);printf(“%d\t%d”,a,b);}7.(3*2分=6分)void fun(int n, int *s){ int f1,f2;if(n= =1||n= =2)*s=1;else{fun(n-1,&f1);fun(n-2,&f2);*s=2*f1+f2+1;printf(“%d\t%d\n”,f1,f2);}}void main( ){ int x;fun(4,&x);printf(”x=%d\n”,x);}程序输出的第一行是1 1 第二行是4 1 最后一行是x=108. (3*2分=6分)void f(int *q1,int *q2,int *q3){*q3=*q1+*q2;}void main( ){ int i,j,a[3][3]={1,1},*p1=a[0],*p2=a[0]+1,*p3=a[0]+2;for(i=2;i<9;i++)f(p1++,p2++,p3++);for(i=0;i<3;i++){ for(j=0;j<3;j++)printf(“%d”,a[i][i]);printf(’\n’);}}程序输出的第一行是111 第二行是555 最后一行是343434 9.(2*3分=6分)int f(int x,int y){return x*y;}void main( ){ int i,j,(*fun)(int,int);fun=f;for(i=1;i<4;i++){ switch(i){case 1:case 2: j=(*fun)(i,i+1);break;case 3: j=(*fun)(i-1,i+2);break;}printf(”j=%d”,j);}}程序输出的第一行是j=2 第二行是j=6 最后一行是j=10三、完善程序1.(2*3分=6分)以下min 函数的功能是:在非空单向链表中查找结点数据域为最小的值,并作为函数返回值.链表如下.struct NODE{int data;NODE *next;};int min(NODE *first){NODE *p;int m;p=first;m=p->data;for(p=p->next;p!=NULL;p= p->next)if(m> p->data)m=p->data;return m;}2.(3*2分=6分)以下程序求二维数组的平均值float average(float (*p)[4],int n){float sum=0;for(int i=0; i<n ;i++){for(j=0;j<4;j++)sum+= (*p)[j] 或 *(*p+j) ;p++;}return sum/(n*4);}void main( ){ float score[3][4]={{56,65,70,76},{89,97,52,81},{90,99,91,86}};printf(”平均值=%f ”,average(score, 3 ));}3. (2*3.5分=7分)以下程序实现将以L 为头指针的链表逆置(设结点个数n>2),即将链表头当链表尾,链表尾当链表头。
C语言测试题目
一、顺序结构1.从键盘输入一个大于0的实数,编程计算并输出以该数位半径的圆面积、圆周长及球体积(取圆周率为3.14)要求输出时有适当的文字说明测试数据:输入2.5输出圆周长15.700000 圆面积19.625000 球体积为65.4166672.从键盘输入两个大于0的实数,编程计算并输出以其为长和宽的矩形的周长和面积。
要求输出时有适当的文字说明测试数据:输入 1.2 3.5输出矩形周长9.400000 矩形面积4.2000003.从键盘输入一个华氏温度值,计算并输出其摄氏温度的值。
提示:摄氏温度c=(5/9)*(f-32) f为华氏温度测试数据:输入华氏温度值100输出摄氏温度值37.7777784.从键盘输入三个实数,计算并输出它们的和及积。
测试数据:输入 1.1 2.2 3.5输出和6.800000 积8.4700005、从键盘输入三个整数,计算并输出它们的和及平均值测试数据:输入 2 5 7输出和14.000000 平均值4.6666676、输入一个三位数,依次输出该数的符号和百位、十位、个位数字。
测试数据:输入-752输出和符号- 百位7 十位5 个位2二、选择结构1.从键盘输入一个字符,判断它如果是小写字母输出其对应大写字母;如果是大写字母输出其对应小写字母;如果是数字输出数字本身;如果是空格,输出“space”;如果不是上述情况,输出“other”。
2.从键盘输入三个实数a、b、c,输出其中最大的数。
测试数据:输入5.3 6.5 2.1输出最大数6.53.从键盘输入一个正整数,判断它能否被 3或者被 5整除, 如至少能被这两个数中的一个整除则输出“yes”,否则输出“no”。
测试数据:(1)输入12 输出yes(2)输入16 输出no4.从键盘输入1到7之间的某个正整数,输出表示一星期中相应的某一天的英文单词:Monday、 Tuesday等等,用switch语句做。
测试数据:输入7输出Sunday5.从键盘输入一百分制成绩(实数),将其转换为成绩等级并输出:大于等于90分为‘A’,80~89分为‘B’,70~79分为‘C’,60~69分为‘D’,60分以下为‘E’。
C语言基础知识测试题-全面完整
基础知识测试题一.单项选择题1.以下不正确的C语言标识符是(D )A. ABCB. abcC. a_bcD. ab.c2.以下正确的C语言标识符是( C)A. %xB. a+bC. a123D. test!3.一个C语言程序的执行是从(A )。
A. main( )函数开始,直到main( )函数结束B. 第一个函数开始,直到最后一个函数结束C. 第一个语句开始,直到最后一个语句结束D. main( )函数开始,直到最后一函数结束4.在C语言程序中,main(C )的位置()。
A. 必须作为第一个函数B.必须作为最后一个函数C.任意D.必须放在它所调用的函数之后5.一个C语言程序是由(B )。
A. 一个主程序和若干个子程序组成B.一个或多个函数组成C.若干过程组成D.若干子程序组成6.C语言源程序的基本单位是(B)。
A. 过程B. 函数C. 子程序D. 标识符7.编辑程序的功能是(A)。
A. 建立并修改程序C.将C源程序编译成目标程序D.调试程序E.命令计算机执行指定的操作8.C编译程序是(D)。
A. C语言程序的机器语言版本B. 一组机器语言指.D. 将C源程序编译成目标程序的程序F. 由制造厂家提供的一套应用软件B9.不属于字符型常量的是( D )A.'A'B."B"C.'\n'D.'\x72'10 .设char ch; 以下正确的赋值语句是:(B )A.ch='123';B.ch='\xff';C.ch='\08';D.ch="\";11 .以下使i的运算结果为4的表达式是(D )A.int i=0,j=0;(i=3,(j++)+i);B.int i=1,j=0;j=i=((i=3)*2);C.int i=0,j=1;(j==1)?(i=1):(i=3);D.int i=1,j=1;i+=j+=2;A12 .若t为double类型,表达式t=1,t+5,t++的值是(D)A.1B.6.0 CC13.设整型变量m,n,a,b,c,d均为1,执行“(m=a>b)&&(n=a>b)”后m,n的值是( B)A.0,0B.0,1C.1,0D.1,1B14 .执行语句“x=(a=3,b=a--)”后,x,a,b的值依次为(CA.3,3,2B.3,2,2C.3,2,3D.2,3,2B15 .若a=1,b=2,c=3,d=4,则条件表达式a<b?a:a<d?c:d的值为(A )A.1B.2C.3D.416 .设int n=7;则++n+1= =9的结果是(C )A.trueB.falseC.1D.017 .设a=2,b=2;则++a+b的结果是(d),a的结果是(b),b的结果是(a)A.2B.3C.4D.518 .设a=2,则执行b=a==!a;语句后,b的结果是( A)A.0B.1C.2D.319 .设有以下语句,则c的二进制值是()char a=3,b=6,c;c=a^b<<2;A.00011011B.00010100C.00011100D.0001100020 .在C语言类型说明中,int、char、short等类型的长度是( A )A.固定的B.由用户自己定义的C.任意的D.与机器字的长度有关的二.填空题1.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语言程序的优点包括( )。
c语言 100题
c语言100题1. 构成C语言程序的基本单位是()。
A.函数B.变量C.子程序D.语句是不正确的转义字符。
2. C语言规定:在一个源程序中,main()函数的位置()。
A.必须在最开始B.必须在系统调用的库函数后面C.可以任意D.必须在最后3. 下列哪个选项能够正确地声明一个指向整型变量的指针?A) int *ptr;B) int ptr;C) int ptr;D) int ptr;4.C语言中的标识符只能由字母、数字和下划线3种字符组成,且第一个字符()。
A.必须为字母B.必须为下划线C.必须为字母或下划线D.可以是字母、数字和下划线中的任意一种5. C语言中的简单数据类型有()。
A.整型、实型、逻辑型B.整型、字符型、逻辑型C.整型、实型、字符型D.整型、实型、字符型、逻辑型6. 以下选项中,不正确的整型常量是()。
A.-37B.32,758C.326D.67.以下选项中,不正确的实型常量是()。
A.123B.1e4C.3.640E-1D.0.358.以下选项中,合法的C语言赋值语句是()。
A.a=b=34B.a=34,b=34C.-i;D.m=(int)(x+y);9.设int类型的数据长度为两个字节,则unsigned int类型数据的取值范围是()。
A.0~255B.0~65535C.-32768~32767D.-256~25510.在C语言中,下列哪个函数用于将整数转换为字符串?A) itoa()B) atoi()C) to_string()D) intstr()11.以下叙述中,不正确的是()。
A.在C程序中,%是只能用于整数运算的运算符B.在C程序中,无论是整数还是实数,都能准确无误地表示C.若a是实型变量,C程序中a=20是正确的,因此实型变量允许被整型数赋值D.前缀和后缀运算符,作为表达式来说有不同的作用12.设a、b、c、d、m、n均为int型变量,且a=5,b=6,c=7,d=8,m=2,n=2,则逻辑表达式(m=a>b)&(n=c>d)运算后,n的值为()。
C语言测试题
测试题1. 以下正确的叙述是:A)在C程序中,每行中只能写一条语句B)若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数C)在C程序中,无论是整数还是实数,都能被准确无误地表示D)在C程序中,%是只能用于整数运算的运算符2. 以下叙述不正确的是。
A)一个C源程序可由一个或多个函数组成B)一个C源程序必须包含一个main函数C)C程序的基本组成单位是函数D)在C程序中,注释说明只能位于一条语句的后面3.在C语言中,要求运算数必须是整型的运算符是。
A) / B) ++ c) != D)%4.下面正确的字符常量是:A)"a" B)'\\'' C)'W' D)’’5.根据下面的程序及数据的输入方式和输出形式,程序中输入语句的正确形式应该为:main(){char ch1 ,ch2 ,ch3;输入语句printf("%c%c%c",ch1,ch2,ch3);}输入形式: A B C输出形式: A B CA) scanf("%c%c%c",&ch1,&ch2,&ch3);B) scanf("%c,%c,%c", &ch1,&ch2, &ch3);C) scanf("%c %c %c",&ch1,&ch2,&ch3);D) scanf("%c%c",&ch1,&ch2,&ch3);6.C语言规定:在一个源程序中,main函数的位置。
A)必须在最开始B)必须在系统调用的库函数的后面C)可以任意D)必须在最后7.一个C语言程序是由A)一个主程序和若干子程序组成 B)函数组成C)若干过程组成 D)若干子程序组成8.已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'十'6'一'3';后,c2中的值为A)D B)68 C)不确定的值 D)C9.以下符合C语言语法的赋值表达式是A)d=9+e+f=d+9B) d=9+e,f=d+9C)d=9十e,e++,d十9 D)d=9十e++=d十7 10.在C语言中(以16位PC机为例),5种基本数据类型的存储空间长度的排列顺序为A)char<int <1ong int<=float<doubleB)char=int<1ong int<=float<doubleC)char< int <1ong int=float=doubleD)char=int =1ong int<=float<double11.若x,i,j和k都是int型变量,则执行下面表达式后x的值为x=(i=4,j=16,k=32)A)4 B)16 C)32 D)5212.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符A)必须为字母 B)必须为下划线C)必须为字母或下划线 D)可以是字母,数字和下划线中任一种字符13.假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是:A)7 B)8 C)6 D)214.以下说法正确的是:A)输入项可以为一实型常量,如scanf("%f",3.5);B)只有格式控制,没有输入项,也能进行正确输入,如scanf("a=%d,b=%d");C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf("%4.2f",&f);D)当输入数据时,必须指明变量的地址,如scanf("%f",&f);1. 在do-while循环中,任何情况下都不能省略while.2.在C程序中,无论是整数还是实数,都能被准确无误地表示3.定义 int x[5],n;则x=x+n;或x++;都是正确的.4.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值。
春考c语言技能测试题及答案
春考c语言技能测试题及答案一、选择题(每题2分,共20分)1. 下列关于C语言的描述,错误的是:A. C语言是一种高级编程语言B. C语言可以直接被计算机执行C. C语言支持结构化编程D. C语言具有丰富的数据类型答案:B2. 在C语言中,用于定义一个整型数组的语句是:A. int a[10];B. int a=10;C. int a[];D. int [10]a;答案:A3. 下列哪个关键字用于定义一个函数?A. ifB. forC. whileD. void答案:D4. 在C语言中,用于输入数据的函数是:A. printf()B. scanf()C. fprintf()D. sprintf()5. 下列哪个运算符用于计算两个数的和?A. +B. -C. *D. /答案:A6. 在C语言中,用于定义一个字符型变量的关键字是:A. intB. charC. floatD. double答案:B7. 下列哪个选项是正确的注释方式?A. // 这是一个注释B. /* 这是一个注释 */C. //* 这是一个注释D. /* 这是一个注释答案:B8. 在C语言中,用于输出数据的函数是:A. scanf()B. printf()C. fprintf()D. sprintf()答案:B9. 下列哪个选项是C语言中的逻辑与运算符?B. ||C. =D. +=答案:A10. 在C语言中,用于定义一个浮点型变量的关键字是:A. intB. floatC. charD. double答案:B二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型变量的正确语句是:int _______ ; 答案:变量名2. 用于定义一个字符串常量的符号是:_______ ;答案:"字符串"3. 在C语言中,表示逻辑或的运算符是:_______ ;答案:||4. 用于定义一个浮点型数组的语句是:float _______ [10];答案:数组名5. 在C语言中,表示逻辑非的运算符是:_______ ;答案:!6. 用于定义一个字符型数组的语句是:char _______ [10];答案:数组名7. 在C语言中,用于计算两个数的差的运算符是:_______ ; 答案:-8. 用于定义一个整型指针的语句是:int *_______ ;答案:指针名9. 在C语言中,用于计算两个数的乘积的运算符是:_______ ; 答案:*10. 用于定义一个浮点型指针的语句是:float *_______ ;答案:指针名三、编程题(每题10分,共20分)1. 编写一个C语言程序,计算并输出两个整数的和。
C语言试题
C语言测试一、选择题1.选出作为C语言用户标识符的一组是()A.sum,define,WORDB. a1,-abc,CASEC. a3_b3,_123,maxD.Num1,2a,m_12.已知代码如下,则B的值为()#define A 5+3 #define B A*AA.23B. 19C. 64D.不确定3.若变量已正确定义并赋值,下面符合C语言语法的表达式()A.Int 18.5%3B. a=a+=c+bC. a:=b+1D. b=c+24.将整型变量a和b中的数进行交换,下面选项中,错误的是( )t=a;a=b;b=t B. t=b;b=a;a=t C. a=a+b;b=a-b;a=a-b D. a=t;t=b;b=a5. 表达式a=3*5,a*4,a+5的值为()A. 20B. 15C. 65D. 106. 设有int a=11;则表达式a++*1/3的值为()A. 4B.11C. 12D. 37. 以下程序代码运行后输出的结果是()main(){char c1=’6‘,c2=’0‘;printf(“%c,%c,%d,%d\n”,c1,c2,c1-c2,c1+c2);}A. 因输出格式不合法,输出出错信息B. 6,0,6,102C. 6,0,5,7D. 6,0,7,68. 关于putchar()函数,错误的是()A. putchar(‘\n’);B. putchar(‘a’)C. putchar(“97”);D. putchar(65)9. 有以下语句,输入“abc”,则输出的结果是()char ch;ch=getchar();putchar(ch);0A. a b cB. aC. 97D. abc10. 已知;a=2,b=3,c=4,则以下选项中值为0的表达式为()A. c>b>aB.aC. a+1==bD. c=b+111. 以下程序代码运行输出的结果是()main (){ int a=4,b=5,c=0,d;d=!a&&!b||!c;printf(”%d\n”,d);}A. 1B. aC. zD. Z12. 以下程序代码运行后输出的结果是()main(){int i,sum;i=2;sum=0;while(i<10);{sum+=I;printf(“%d\n”,sum);}A.0B. 20C. 死循环D. 程序错误13. 以下程序代码运行后输出的结果是()main(){int i,sum;i=10;while(i>=1){sum+=i;i--;}printf(”%d\n“,sum);}A.54B. 45C. 55D. 无法确定14.以下程序代码运行后输出的结果是()main(){int n=9;While(n>5){n--;printf(”%d“,n);}}A.876B. 8765C. 9876D. 98715. 以下程序代码运行后输出的结果是()main(){int i;for(i=1;i<=40;i++){if(i++%5==0)If(++i%8==0)printf(“%d”,i);}printf(“%d”,i);}printf(“\n”);}A.24B. 32C. 40D. 516. 若:int a=0,b,*p=&b,*q=&a;则下面赋值语句中与b=a;语句等价的是()A. p=q;B. p=*q;C. *p=&n1;D. *p=*q;17. 能正确表示逻辑关系;a大于等于10或a小于等于0的C语言表达式是()A. a>=10 or a<=0B. a>=10 && a<=0C. a≥0||a≤10D. a>=10||a<=018. 两次运行下面的程序,如果从键盘上分别输入6和4,则输出的结果是()main(){ int m;scanf(“%d”,m);if(m++>5)printf(“%d”,m);elseprintf(“%d\n”,m--);}A. 7和5B. 6和3C. 6和4D. 7和419. 以下程序代码运行后输出的的结果是()#include<stdio.h>{ int c=0,k;for(k=1;k<3;k++)switch(k){ default:c+=k;case 2;c++;break;case 4;c+=2;break;}printf(“%d\n”,c);}A. 5B. 3C. 9D. 720. 下列选项中能正确定义数组的语句是()A. int year[0…2012]B. int year[ ]C. int N=2012;D. #define N 2012int year [N]; int year [N];21. 以下能对一堆数组a进行正确初始化的语句是()A. int a[5]=(0,0,0,0,0);B. int a(5)={5};C. int a [ ]={1,2,3};D. int a[ ]={‘5*1’};22. 若有定义;int a=911,*b=&a;则printf(“%d\n”,*b);输出的结果是()A. 无确定B. 912C. 911D. a的地址是23. 执行以下程序段后,a的值为()int*p,a=10,b=5;p=&a;a=*p+b;A.15B. 10C. 5D. 编译出错24. 以下程序代码运行后,a的值为()main(){ int a,k=4,m=6;int *p1=&k;int *p2=&m;a=(p1==p2);printf(“%d\n”,a);}A. 1B. 0C. 4D. 运行时出错,a无定值二、填空题1. 合法的标识符只能由________、_________和_________组成,起始字符必须为_____和_______2. 15%4结果_______15%-4结果_________-15%4结果___________。
高中c语言测试题及答案
高中c语言测试题及答案高中C语言测试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义函数?A. structB. intC. returnD. void答案:D2. 在C语言中,以下哪个选项不是合法的变量名?A. _123B. $nameC. name123D. name答案:B3. 下列哪个选项是C语言中正确的注释?A. // 这是一个注释B. /* 这是一个注释 */C. /* 这是一个注释D. // 这是一个注释答案:A4. C语言中,以下哪个选项表示逻辑与运算?A. &&B. ||C. !D. ==答案:A5. 以下哪个选项是C语言中正确的字符串定义?A. char str[] = "Hello";B. char str[] = 'Hello';C. char str[] = {"Hello"};D. char str[] = "Hello", "World";答案:A6. C语言中,以下哪个选项是正确的数组定义?A. int arr[5] = {1, 2, 3};B. int arr[] = {1, 2, 3};C. int arr[5] = {1, 2};D. int arr[] = {1, 2, 3, 4, 5, 6};答案:B7. 在C语言中,以下哪个选项是正确的文件包含指令?A. #include "stdio.h"B. #include <stdio.h>C. #include "stdio.h"D. #include <stdio.h>答案:B8. C语言中,以下哪个选项是正确的条件语句?A. if (x > y)B. if (x > y) {C. if (x > y)D. if (x > y) {答案:D9. C语言中,以下哪个选项是正确的循环语句?A. for (int i = 0; i < 10; i++)B. for (int i = 0; i < 10; i++)C. for (int i = 0; i < 10; i++)D. for (int i = 0; i < 10; i++)答案:A10. C语言中,以下哪个选项是正确的函数定义?A. int add(int a, int b) { return a + b; }B. int add(int a, int b) { return a, b; }C. int add(int a, int b) { return a; }D. int add(int a, int b) { return a + b; }答案:A二、填空题(每题2分,共20分)1. C语言中,用于定义一个字符常量的数据类型是________。
c语言 测试题
第3章一、单项选择题1. 在一个C程序中(B )。
A.)main函数必须出现在所有函数之前B)main函数可以在程序任何位置出现C)main函数必须出现在所有函数之后D)main函数必须出现在固定位置2.在PC机中,’\n’在内存占用的字节数是( A )。
A)1 B)2 C)3 D)43. 下列关于C语言用户标识符的叙述中正确的是(B )A)用户标识符中可以出现下划线和中划线(减号)B)用户标识符中不可以出现中划线(减号),但可以出现下划线C)用户识符中可以出现下划线,但不可以放在用户标识符的开头D)用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头4. 以下叙述中正确的(D )。
A.)输入项可以是一个实型常量,例如:scanf("%f",3.5);B.)只有格式控制,没有输入项,也能正确输入数据到内存,例如:scanf("a=%d,b=%d");C.)当输入一个实型数据时,格式控制部分可以规定小数点后的位数,例如:scanf("%4.2f ",&f);D.)当输入数据时,必须指明变量地址,例如:scanf("%f ",&f);5.设整型变量i的值为3,则计算表达式i---i后i的值为( A )。
A)0 B)1 C)2 D)表达式出错6.设整型变量a,b,c均为2,表达式a+++b+++c++的结果是( A )。
A)6 B)9 C)8 D)表达式出错7. 以下选项中合法的用户标识符是( B )。
A)long B)_2test C)3Dmax D )A.dat8.设有语句int a=3;,则执行了语句a+=a-=a*a;后,变量a的值是( D )。
A)3 B)0 C) 9 D)-129.在以下一组运算符中,优先级最高的运算符是( C )。
A)<= B)= C)% D)||10.设a,b和c都是int型变量,且a=3,b=4,c=5,则下面的表达式中值为0的是( D )。
对口c语言高考测试题及答案
对口c语言高考测试题及答案1. 以下哪个选项是C语言中的合法变量名?A. 2variableB. variable-nameC. variable_nameD. variable!name答案:C2. 在C语言中,哪个关键字用于定义一个函数?A. functionB. defC. defineD. int答案:D3. 以下哪个选项是C语言中正确的注释方式?A. // This is a commentB. /* This is a comment */C. //* This is a commentD. /* This is a comment */答案:A4. 在C语言中,用于定义一个整型数组的语法是什么?A. int array[10];B. int [10] array;C. int array = 10;D. int array[10] = {0};答案:A5. C语言中,哪个运算符用于计算两个整数的和?A. +B. -C. *D. /答案:A6. 在C语言中,以下哪个选项是正确的字符串定义方式?A. char str[] = "Hello";B. char str = "Hello";C. char str[] = 'Hello';D. char str[] = {"Hello"};答案:A7. C语言中,以下哪个选项是正确的条件语句?A. if (x > y)B. if x > yC. if (x > y)D. if x > y答案:A8. 在C语言中,以下哪个选项是正确的循环结构?A. for (int i = 0; i < 10; i++)B. for (int i = 0; i < 10; i++)C. while (i < 10)D. do-while (i < 10)答案:A9. C语言中,以下哪个函数用于计算数组的长度?A. sizeofB. lengthC. sizeD. count答案:A10. 在C语言中,以下哪个选项是正确的文件操作函数?A. fopenB. openfileC. fileopenD. file答案:A11. C语言中,以下哪个选项是正确的结构体定义方式?A. struct Student {int id;char name[50];};B. struct Student = {int id;char name[50];};C. struct Student {int id;char name;};D. struct Student = {int id;char name[50];};答案:A12. 在C语言中,以下哪个选项是正确的指针声明方式?A. int *ptr;B. int ptr*;C. int *ptr = 0;D. int ptr = 0;答案:A13. C语言中,以下哪个选项是正确的递归函数调用?A. void factorial(int n) {if (n == 0) return 1;else return n * factorial(n - 1);}B. void factorial(int n) {if (n == 0) return 1;else return n * factorial(n);}C. void factorial(int n) {if (n == 0) return 1;else return n * factorial(n - 1);}D. void factorial(int n) {if (n == 0) return 1;else return n * factorial(n - 1);}答案:A14. 在C语言中,以下哪个选项是正确的宏定义?A. #define PI 3.14159B. #define PI = 3.14159C. #define PI 3.14159D. #define PI = 3.14159答案:A15. C语言中,以下哪个选项是正确的枚举定义方式?A. enum Color {RED, GREEN, BLUE};B. enum Color {RED, GREEN, BLUE} color;C. enum Color {RED, GREEN, BLUE};D. enum Color {RED, GREEN, BLUE} color;答案:A。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
测试题1、 买鸡问题:用5000元买5000只鸡,大公鸡5元1只,母鸡3元1只,小鸡1元3只。
问各能买多少只?要求编程列出所有购买方案并统计总方案数并输出。
2、 一个四位正整数,当它逆向排列时得到的4位数是它自身的整数倍,请找出所有符合这一条件的四位数并统计总个数。
3、 有27个鸡蛋,要求10天吃完,问有多少种吃法。
要求输出所有方案及总方案数。
4、 斐波那契数列的数学定义为:1212123ii i a a a a ai --=⎧⎪=⎨⎪=+≥⎩,要求编程序输出此数列的前n 项,其中的n 在程序运行时通过键盘输入。
5、 求方程0100105=-+x x 的根,要求绝对误差不超过0.0001。
6、 找赛手:2个羽毛球队比赛,各出3人,每个人只比一次。
甲队为A ,B ,C 三人,乙队为X ,Y ,Z 三人。
有人打听比赛名单,A 说他不和 Y 比,C 说不和Y 、Z比。
请编程找出三队赛手的对阵名单。
7、 有五项设计任务可供选择,各项设计任务的预期完成时间分别为3,8,5,4,10周,设计报酬分别为7,17,11,9,21万元。
设计任务只能一项一项地进行,总的期限是20周。
选择任务时必须满足下面要求:● 至少完成3项设计任务;● 若选择任务1,必须同时选择任务2; ● 任务3和任务4不能同时选择。
应当选择哪些设计任务,才能使总的设计报酬最大?编程找出最佳选择方案并输出满足条件的最大报酬。
8、 某处发生一起案件,侦察得知如下可靠线索: ABCD 四人都有作案可能 AB 中至少一人参与作案 BC 中至少一人参与作案 CD 中至少一人参与作案 AC 中至少一人未参与作案要求编程序输出嫌疑最大的案犯。
9、 编程用递归的方法计算斐波那契(Fibonacci)数列的第n 项的值,其中的n 在程序运行时通过键盘输入。
10、 编程用递归的方法计算n !,其中的n 在程序运行时通过键盘输入。
11、 用数组实现的小系统。
12、 用链表实现的小系统。
参考答案//1#include <stdio.h>#include <stdlib.h>void main(){int cock,hen,chick,count=0;for(cock=1;cock<=1000;cock++)for(hen=1;hen<=5000/3;hen++)for(chick=1;chick<=5000;chick++)if((cock+hen+chick==5000)&&(15*cock+9*hen+chick==15000)){printf("公鸡:%4d 母鸡:%4d 小鸡:%4d\n",cock,hen,chick);count++;}printf("\n共计有%d种买法!\n",count);system("pause");}//优化后的程序#include <stdio.h>#include <stdlib.h>void main(){int cock,hen,chick,count=0;for(cock=1;cock<=1000;cock++)for(hen=1;hen<=5000/3;hen++){chick=5000-hen-cock;if(15*cock+9*hen+chick==15000){printf("公鸡:%4d 母鸡:%4d 小鸡:%4d\n",cock,hen,chick);count++;}}printf("\n共计有%d种买法!\n",count);system("pause");}//2#include <stdio.h>#include <stdlib.h>void main(){int i,ge,shi,bai,qian,newi,count=0;for(i=1000;i<=9999;i++){ge=i%10;shi=i/10%10;bai=i/100%10;qian=i/1000;newi=ge*1000+shi*100+bai*10+qian;if(newi%i==0){printf("%8d",i);count++;}}printf("\n共计有%d个!\n",count);system("pause");}//3#include <stdio.h>#include <stdlib.h>#define N 10#define GESHU 27void main(){int i,a[N+1],count=0;for(a[1]=0;a[1]<=GESHU;a[1]++)for(a[2]=0;a[2]<=GESHU;a[2]++)for(a[3]=0;a[3]<=GESHU;a[3]++)for(a[4]=0;a[4]<=GESHU;a[4]++)for(a[5]=0;a[5]<=GESHU;a[5]++)for(a[6]=0;a[6]<=GESHU;a[6]++)for(a[7]=0;a[7]<=GESHU;a[7]++)for(a[8]=0;a[8]<=GESHU;a[8]++)for(a[9]=0;a[9]<=GESHU;a[9]++)for(a[10]=0;a[10]<=GESHU;a[10]++){a[0]=0;for(i=1;i<=N;i++)a[0]+=a[i];if(a[0]==GESHU){for(i=1;i<=N;i++)printf("%4d",a[i]);printf("\n");count++;}}printf("\n共有%d种方案!\n",count);}//优化算法#include <stdio.h>#include <stdlib.h>#define N 10#define GESHU 27void main(){int i,a[N+1],count=0;for(a[1]=0;a[1]<=GESHU;a[1]++)for(a[2]=0;a[2]<=GESHU-a[1];a[2]++)for(a[3]=0;a[3]<=GESHU-a[1]-a[2];a[3]++)for(a[4]=0;a[4]<=GESHU-a[1]-a[2]-a[3];a[4]++)for(a[5]=0;a[5]<=GESHU-a[1]-a[2]-a[3]-a[4];a[5]++) for(a[6]=0;a[6]<=GESHU-a[1]-a[2]-a[3]-a[4]-a[5];a[6]++)for(a[7]=0;a[7]<=GESHU-a[1]-a[2]-a[3]-a[4]-a[5]-a[6];a[7]++)for(a[8]=0;a[8]<=GESHU-a[1]-a[2]-a[3]-a[4]-a[5]-a[6]-a[7];a[8]++)for(a[9]=0;a[9]<=GESHU-a[1]-a[2]-a[3]-a[4]-a[5]-a[6]-a[7]-a[8];a[ 9]++){a[10]=GESHU-a[1]-a[2]-a[3]-a[4]-a[5]-a[6]-a[7]-a[8]-a[9];if(a[10]>=0){for(i=1;i<=N;i++)printf("%4d",a[i]);printf("\n");count++;}}printf("\n共有%d种方案!\n",count);}//4#include <stdio.h>#include <stdlib.h>void main(){int i,n,a1=1,a2=2,a3;do{printf("请输入要计算的项数(1--45):");scanf("%d",&n);}while((n<1)||(n>45));if(n==1)printf("前%d项的值为:%16d\n",n,a1);elseif(n==2)printf("前%d项的值为:%16d%16d\n",n,a1,a2);else{printf("前%d项的值为:\n%16d%16d",n,a1,a2);for(i=3;i<=n;i++){a3=a2+a1;a1=a2;a2=a3;printf("%16d",a3);}}printf("\n");system("pause");}//5#include <stdio.h>#include <stdlib.h>#include <math.h>double f(double x){return pow(x,5)+10*x-100;}void main(){double a=0,b=10,c,fa,fb,fc,jqd=0.0001;int count=0;fa=f(a);fb=f(b);if(fa*fb==0)if(fa==0)printf("方程根为:%f\n",a);elseprintf("方程根为:%f\n",b);elseif(fa*fb>0)printf("所给定的范围[%f,%f]内不能保证有实根\n",a,b);else{while(b-a>jqd){count++;c=(a+b)/2;fa=f(a);fc=f(c);if(fc==0){b=c;a=c;}elseif(fa*fc<0)b=c;elsea=c;}printf("方程根为:%f,迭代次数:%d次!\n",c,count);}}//6#include <stdio.h>#include <stdlib.h>#include <math.h>void main(){char a,b,c;for(a='x';a<='z';a++)for(b='x';b<='z';b++)if(a!=b)for(c='x';c<='z';c++)if((a!='y')&&(c!='y')&&(c!='z')&&(a!=c)&&(b!=c))printf("a:%c b:%c c:%c\n",a,b,c);system("pause");}//7#include<stdio.h>#define N 5void main(){int time[]={3,8,5,4,10};int cost[]={7,17,11,9,21};int maxtime=20;int a[N],b[N];int maxcost=0,mytime,mycost,count;for(a[0]=0;a[0]<=1;a[0]++)for(a[1]=0;a[1]<=1;a[1]++)for(a[2]=0;a[2]<=1;a[2]++)for(a[3]=0;a[3]<=1;a[3]++)for(a[4]=0;a[4]<=1;a[4]++){count=mytime=mycost=0;for(int t=0;t<N;t++)if(a[t]==1){count++;mytime+=time[t];mycost+=cost[t];}if((count>=3)&&(mytime<=maxtime)&&(a[2]+a[3]<=1) &&(!((a[0]==1)&&(a[1]==0)))&&(mycost>maxcost)){maxcost=mycost;for(int t=0;t<N;t++)b[t]=a[t];}}printf("选中的任务如下(编号);");for(int temp=0;temp<N;temp++)if(b[temp]==1)printf("%4d",temp+1);printf("\n最大报酬;%d\n",maxcost);}//8#include <stdio.h>#include <stdlib.h>#define N 4void main(){char a[N+1],i,b[N+1]={0};for(i=1;i<=N;i++)printf(" %c",'A'+i-1);printf("\n\n");for(a[1]=0;a[1]<=1;a[1]++)for(a[2]=0;a[2]<=1;a[2]++)for(a[3]=0;a[3]<=1;a[3]++)for(a[4]=0;a[4]<=1;a[4]++)if((a[1]+a[2]>=1)&&(a[2]+a[3]>=1)&&(a[3]+a[4]>=1)&&(a[1]*a[3]==0) ){for(i=1;i<=N;i++){printf("%4d",a[i]);if(a[i]==1)b[i]++;}printf("\n");}int j=1;for(i=2;i<=N;i++)if(b[i]>b[j])j=i;printf("最有可能的嫌犯是:%c\n",'A'+j-1);system("pause");}//9#include <stdio.h>#include <stdlib.h>//最大项数#define MAXN 30int f(int n){if(n==1)return 1;elseif(n==2)return 2;elsereturn f(n-1)+f(n-2);}void main(){int n;do{printf("请输入要计算的项数(1--%d):",MAXN);scanf("%d",&n);}while((n<1) || (n>MAXN));printf("第%d项的值为:%d\n",n,f(n));system("pause");}//10#include <stdio.h>#include <stdlib.h>//最大整数#define MAXN 10int f(int n){if(n==1)return 1;elsereturn n*f(n-1);}void main(){int n;do{printf("请输入要计算阶乖的正整数(1--%d):",MAXN);scanf("%d",&n);}while((n<1) || (n>MAXN));printf("%d!=%d\n",n,f(n));system("pause");}。