c语言入门150道题
c语言初级考试题及答案
c语言初级考试题及答案1. 以下哪个选项是C语言中的关键字?A. intB. floatC. stringD. integer答案:A2. C语言中,用于定义一个整型变量的关键字是什么?A. varB. intC. integerD. float答案:B3. 在C语言中,以下哪个运算符用于比较两个值是否相等?A. ==B. !=C. =D. <=答案:A4. 在C语言中,如何定义一个名为“sum”的函数,该函数接收两个整型参数并返回它们的和?A. int sum(int a, int b) { return a + b; }B. int sum(int a, int b) { return a - b; }C. int sum(float a, float b) { return a + b; }D. float sum(int a, int b) { return a + b; }答案:A5. C语言中,以下哪个选项是正确的注释方式?A. // This is a single line commentB. /* This is a single line comment */C. //* This is a single line commentD. /* This is a single line comment */答案:A6. 在C语言中,以下哪个选项是正确的字符串字面量表示方法?A. "Hello, World!"B. 'Hello, World!'C. "Hello, World"D. 'Hello, World'答案:A7. 以下哪个选项是C语言中的正确数组声明?A. int numbers[5] = {1, 2, 3, 4, 5};B. int numbers[] = {1, 2, 3, 4, 5};C. int numbers[5] = {1, 2, 3};D. int numbers = {1, 2, 3, 4, 5};答案:A8. 在C语言中,以下哪个语句用于在循环中终止循环?A. break;B. continue;C. exit;D. return;答案:A9. C语言中,以下哪个函数用于将字符串连接到另一个字符串?A. strcatB. strcpyC. sprintfD. printf答案:A10. 在C语言中,以下哪个函数用于将一个整数转换为字符串?A. atoiB. itoaC. sprintfD. printf答案:B。
c语言基础试题库及答案
c语言基础试题库及答案一、选择题1. C语言中,用于定义一个结构体的关键字是:A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项不是C语言的标准数据类型?A. intB. floatC. charD. string答案:D3. 在C语言中,用于实现循环的关键字是:A. whileB. forC. ifD. switch答案:A、B4. C语言中,用于定义函数的关键字是:A. functionB. defC. voidD. int答案:C5. 下列哪个选项是C语言中的合法变量名?A. 2variableB. variable2C. variable_2D. int答案:B、C二、填空题1. C语言中,________关键字用于定义一个数组。
答案:int2. 在C语言中,________关键字用于定义一个指针。
答案:*3. C语言中,________关键字用于定义一个函数。
答案:int4. 在C语言中,________运算符用于求两个数的和。
答案:+5. C语言中,________运算符用于判断两个数是否相等。
答案:==三、简答题1. 请简述C语言中函数的定义和调用过程。
答案:函数定义包括函数的返回类型、函数名、参数列表和函数体。
函数调用则是通过函数名和参数列表来调用已定义的函数。
2. 解释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 even numbers from 1 to 100 is: %d", sum);return 0;}```2. 编写一个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语言程序基础考试题及答案一、选择题(每题2分,共20分)1. C语言中,用于定义字符型变量的关键字是______。
A. intB. charC. floatD. double答案:B2. 下列关于C语言函数的描述,正确的是______。
A. 函数必须有返回值B. 函数可以没有参数C. 函数的返回值类型不能是结构体D. 函数可以没有返回值答案:B3. 在C语言中,以下哪个运算符用于计算两个数的和?A. %B. +C. &&D. ==答案:B4. 以下哪个选项是C语言中的合法整型常量?A. 0x1AB. 0.1C. 1.2e3D. 0123答案:A5. C语言中,以下哪个关键字用于声明一个函数?A. structB. intC. voidD. return答案:C6. 在C语言中,以下哪个选项是正确的字符串字面量?A. "hello"B. 'hello'C. "helloD. 'hello'答案:A7. C语言中,以下哪个选项是正确的注释?A. // this is a commentB. /* this is a comment */C. // this is a commentD. /* this is a comment */答案:A8. C语言中,以下哪个选项是正确的二进制常量表示?A. 0b1010B. 0x2AC. 0101D. 0x10答案:A9. 在C语言中,以下哪个选项是正确的数组声明?A. int arr[] = {1, 2, 3};B. int arr[3] = {1, 2, 3};C. int arr[] = {1, 2};D. int arr[3] = {1};答案:A10. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A二、填空题(每题2分,共20分)1. C语言中,用于定义一个整型变量的关键字是______。
c语言经典题目100题
1.寻找数组中的最大值和最小值2.寻找数组中的中位数3.查找数组中给定元素的索引4.反转数组5.合并两个升序数组6.移位数组7.查找两个数组的交集8.查找两个数组的并集9.查找两个数组的差集10.寻找数组中的众数11.寻找数组中的缺失元素12.寻找数组中的重复元素13.计算数组的和14.计算数组的平均值15.计算数组的方差16.计算数组的标准差17.比较两个数组是否相等18.复制数组19.排序数组20.搜索数组(线性搜索)21.搜索数组(二分搜索)22.插入元素到数组23.删除元素到数组24.更新数组中的元素25.创建动态数组26.释放动态数组27.字符串复制28.字符串连接29.字符串比较30.字符串搜索31.字符串替换32.字符串分割33.字符串反转34.字符串大小写转换35.字符串修剪36.计算字符串长度37.字符串格式化38.链表创建39.链表插入40.链表删除41.链表搜索42.链表反转43.链表排序44.链表合并45.链表复制46.链表释放47.树创建48.树插入49.树删除50.树搜索51.树反转52.树排序53.树合并54.树复制55.树释放56.堆创建57.堆插入58.堆删除59.堆搜索60.堆反转61.堆排序62.堆合并63.堆复制64.堆释放65.图创建66.图插入67.图删除68.图搜索69.图反转70.图排序71.图合并72.图复制73.图释放74.队列创建75.队列插入76.队列删除77.队列搜索78.队列反转79.队列排序80.队列合并81.队列复制82.队列释放83.栈创建84.栈插入85.栈删除86.栈搜索87.栈反转88.栈排序89.栈合并90.栈复制91.栈释放92.哈希表创建93.哈希表插入94.哈希表删除95.哈希表搜索96.哈希表反转97.哈希表排序98.哈希表合并99.哈希表复制100.哈希表释放。
c语言基础试题及答案
c语言基础试题及答案一、选择题1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 在C语言中,以下哪个运算符用于取地址?A. *B. &C. %D. #答案:B3. 下列哪个选项是C语言中的合法整数常量?A. 0x12B. 0X12C. 0x1GD. 0x1g答案:A4. C语言中,以下哪个函数用于计算字符串的长度?A. strlen()B. strcpy()C. strcat()D. strcmp()答案:A5. 在C语言中,以下哪个关键字用于定义一个函数?A. functionB. defC. defineD. void答案:D二、填空题1. C语言中,用于定义一个变量的关键字是________。
答案:int2. C语言中,用于定义一个数组的语法是________。
答案:type arrayName[arraySize];3. C语言中,用于定义一个指针的语法是________。
答案:type *pointerName;4. C语言中,用于定义一个函数的语法是________。
答案:type functionName(parameters);5. C语言中,用于定义一个枚举的语法是________。
答案:enum enumName {elements};三、简答题1. 简述C语言中指针和数组的关系。
答案:在C语言中,指针和数组有密切的关系。
指针可以指向数组的元素,数组名可以作为指向数组首元素的指针。
通过指针可以访问和修改数组中的元素。
2. 描述C语言中函数的调用过程。
答案:在C语言中,函数调用过程包括:调用函数、传递参数、执行函数体、返回结果。
调用函数时,程序控制权转移到被调用函数,函数执行完毕后,返回到调用点继续执行。
四、编程题1. 编写一个C语言程序,实现计算两个整数的和。
答案:```c#include <stdio.h>int main() {int num1, num2, sum;printf("Enter two numbers: ");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("The sum is: %d\n", sum);return 0;}```2. 编写一个C语言程序,实现字符串的反转。
c语言程序基础练习题500道(附答案)
1.下列四组选项中,均不是C语言关健字的选项是( A )。
A) define B) gect C) include D) whileIF char scanf gotype printf case pow2.下面四个选项中,均是合法整型常量的选项是( A )。
A)160 B)-0xcdf C) -01 D)-0x48a-0xffff 01a 986,012 2e5011 0xe 0668 0x3.下面四个选项中,均是不合法的转义符的选项是( B )。
A) '\"' B) '\1011' C) '\011' D) '\abc''\\' '\' '\f' '\101''xf' '\A' '\}' 'x1f'4.下面不正确的字符串常量是( A )。
A)'abc' B)"12'12" C)"0" D)" "5.以下选项中不合法的用户标识符是( A )。
A)abc.c B)file C)Main D)PRINT6.C语言提供的合法关键字是( D )。
A) swithB) cherC) CaseD)default7.下列标识符组中,合法的用户标识符为 AA)_0123与ssipedB)del-word与signedC)list与*jerD) keep%与wind8.在C语言中,逻辑值"真"的表示是用( C )。
A) true B) 整型值0 C)非另整型值D) T9若有以下定义char s='\092';则该语句( b )A)使s的值包含一个字符B)定义不合法,s的值不确定C)使s的值包含4个字符D)使s的值包含3个字符10设C语言中,int类型数据占2个字节,则float类型数据占(D )个字节。
C语言基础练习100题(含答案)
C语言基础练习100题(含答案)雷柳青编排1、下面程序的输出是________#include<stdio.h>void main(){ int k=11;printf("k=%d,k=%o,k=%x\n",k,k,k);}A) k=11,k=12,k=11 B) k=11,k=13,k=13 C) k=11,k=013,k=0xb D) k=11,k=13,k=b2、在下列选项中,不正确的赋值语句是________.A) ++t; B) n1=(n2=(n3=0));C) k=i=j; D) a=b+c=1;3、下面合法的C语言字符常量是__________.A) '\t' B) "A" C) 65 D) A4、字符(char)型数据在微机内存中的存储形式是____.A) 反码B) 补码C) EBCDIC码D) ASCII码5、设int a=12,则执行完语句a+=a-=a*a后,a的值是________A) 552 B) 264 C) 144 D) -2646、执行下面程序中的输出语句后,输出结果是______.#include<stdio.h>void main(){int a;printf("%d\n",(a=3*5,a*4,a+5));}A) 65 B) 20 C) 15 D) 107、下面程序的输出是__________.#include<stdio.h>void main(){int x=023;printf("%d\n",--x);}A) 17 B) 18 C) 23 D) 248、下面程序的输出是___________.#include<stdio.h>void main(){char ch1,ch2;ch1='A'+'5'-'3';ch2='A'+'6'-'3';printf("%d,%c\n",ch1,ch2);}A) 67,D B) B,C C) C,D D) 不确定的值9、以下程序的输出结果是________.#include<stdio.h>void main(){ int x=10,y=10;printf("%d %d\n",x--,--y);}A) 10 10 B) 9 9 C) 9 10 D) 10 910、若x和y都是int型变量,x=100,y=200,且有下面的程序片段:printf("%d",(x,y));上面程序片段的输出结果是_______.A) 200 B) 100C) 100 200 D) 输出格式符不够,输出不确定的值11、阅读下面的程序#include<stdio.h>void main(){int i,j;i=010;j=9;printf("%d,%d",i-j,i+j);}则程序的运行结果是________.A) 1,19 B) -1,19 C) 1,17 D) -1,1712、阅读下面的程序#include<stdio.h>void main(){int i,j,m,n;i=8;j=10;m=++i;n=j++;printf("%d,%d,%d,%d",i,j,m,n);}程序的运行结果是_________.A) 8,10,8,10 B) 9,11,8,10C) 9,11,9,10 D) 9,10,9,1113、若已定义int a,则表达式a=10,a+10,a++的值是___.A) 20 B) 10 C) 21 D) 1114、阅读下面的程序#include<stdio.h>void main(){int i,j;scanf("%3d%2d",&i,&j);printf("i=%d,j=%d\n",i,j);}如果从键盘上输入1234567<回车>,则程序的运行结果是________.A) i=123,j=4567 B) i=1234,j=567C) i=1,j=2 D) i=123,j=4515、下面程序的输出结果是________.#include<stdio.h>void main(){int a=-1, b=4, k;k=(++a<=0)&&(b--<=0);printf("%d,%d,%d\n",k,a,b);}A) 1,1,2 B) 1,0,3 C) 0,1,2 D) 0,0,316、下面程序的输出结果是_______.#include<stdio.h>void main(){int a=5,b=3;float x=3.14, y=6.5;printf("%d,%d\n",a+b!=a-b,x<=(y-=6.1));}A) 1,0 B) 0,1 C) 1,1 D) 0,017、若有以下定义和语句:int a=010, b=0x10, c=10;printf("%d,%d,%d\n",a,b,c);则输出结果是_________.A) 10,10,10 B) 8,16,10 C) 8,10,10 D) 8,8,1018、已知有double型变量x=2.5,y=4.7,整型变量a=7, 则表达式x+a%3*(int)(x+y)%2/4 的值是_________.A) 2.4 B) 2.5 C) 2.75 D) 019、设有以下语句:int x=10;x+=3+x%3,则x的值是._________A) 14 B) 15 C) 11 D) 12 20、若d为double型变量,则表达式d=1,d+5,d++的值是_______.A) 1 B) 6.0 C) 2.0 D) 1.021、若有定义int a=12,n=5,则表达式a%=(n%2)运算后,a的值__________.A) 0 B) 1 C) 12 D) 622、若有定义int x=3,y=2和float a=2.5,b=3.5,则表达式:(x+y)%2+(int)a/(int)b的值是____.A) 0 B) 2 C) 1.5 D) 123、在C语言中,以下叙述不正确的是________.A) 在C程序中,无论是整数还是实数,都能被准确无误的表示B) 在C程序中,变量名代表存储器中的一个位置C) 静态变量的生存期与整个程序的生存期相同D) C语言中变量必须先定义后引用24、设a为整型变量,不能正确表达数学关系10<a<15的C语言表达式是________.A) 10<a<15 B) a==11||a==12||a==13||a==14 C) a>10&&a<15 D) !(a<=10)&&!(a>=15)25、如果c为字符型变量,判断c是否为空格不能使用________.(假设已知空格ASCII码为32)A) if(c=='32') B) if(c==32)C) if(c=='\40') D) if(c==' ')26、执行下面程序时,若从键盘输入"2<CR>",则程序的运行结果是________.#include <stdio.h>void main( ){ int k; char cp;cp=getchar( );if (cp>='0' && cp<='9')k=cp-'0';else if (cp>='a' && cp<='f')k=cp-'a'+10;else k=cp-'A'+10;printf("%d\n",k);}A) 2 B) 4 C) 1 D) 1027、执行下面程序后,运行结果是________.#include <stdio.h>void main( ){ int x=41,y=1;if (x%3==0 && x%7==0){ y+=x;printf("y=%d\n",y);}else{y=x;printf("y=%d",y);}}A) y=41 B) y=43 C) y=42 D) y=128、运行下面程序时,从键盘输入"12,34,9<CR>",则输出结果是______.#include <stdio.h>void main( ){ int x,y,z;scanf("%d,%d,%d",&x,&y,&z);if (x<y)if (y<z)printf("%d\n",z);else printf("%d\n",y);else if (x<z)printf("%d\n",z);else printf("%d\n",x);}A) 34 B) 12 C) 9 D) 不确定的值29、运行下面程序时,从键盘输入字母H,则输出结果是________.#include <stdio.h>void main( ){ char ch;ch=getchar( );switch(ch){ case 'H':printf("Hello!\n");case 'G':printf("Good morning!\n");default:printf("Bye_Bye!\n");}}A) Hello! B) Hello!Good Morning!C) Hello! D) Hello!Good morning! Bye_Bye!Bye_Bye!30、执行下列程序段后的输出结果是_________.int x=1,y=1,z=1;x+=y+=z;printf("%d\n",x<y?y:x);A) 3 B) 2 C) 1 D) 431、设ch是char型变量,值为'A',则表达式ch=(ch>='A' && ch<='Z')?ch+32:ch的值是_____.A) Z B) a C) z D) A32、下面程序的输出结果是________.#include <stdio.h>void main( ){ int x=8,y=-7,z=9;if (x<y)if (y<0) z=0;else z-=1;printf("%d\n",z);}A) 8 B) 1 C) 9 D) 033、运行下面程序时,若从键盘输入"3,4 <CR>",则程序的输出结果是_______.#include <stdio.h>void main( ){ int a,b,s;scanf("%d,%d",&a,&b);s=a;if (s<b) s=b;s=s*s;printf("%d\n",s) ;}A) 14 B) 16 C) 18 D) 2034、下列程序的执行结果是_________.#include <stdio.h>void main( ){ int x=0,y=1,z=0;if (x=z=y)x=3;printf("%d,%d\n",x,z);}A) 3,0 B) 0,0 C) 0,1 D) 3,135、能够完成如下函数计算的程序段是______.┌-1 x<0y= ┤0 x=0└ 1 x>0A) y=1; B) if (x>=0)if(x!=0) if(x>0) y=1;if(x>0) y=1; else y=0;else y=0; else y=-1;C) y=0; D) y=-1;if (x>=0) if (x>0) y=1;if (x>0) y=1; else y=0;else y=-1;36、以下程序的执行结果是________.#include <stdio.h>void main( ){ int x=1,y=0;switch (x){case 1:switch (y){case 0:printf("first\n");break;case 1:printf("second\n");break;}case 2:printf("third\n");}}A) first B) firstsecond thirdC) first D) secondthird37、以下程序的执行结果是________.#include <stdio.h>void main( ){ int a,b,c,d,x;a=c=0;b=1;d=20;if (a) d=d-10;else if(!b)if (!c) x=15;else x=25;printf("d=%d\n",d);}A) d=20 B) d=10 C) d=15 D) 2538、下列程序执行后的输出结果是________.#include <stdio.h>void main( ){ int x,y=1,z;if ((z=y)<0) x=4;else if (y==0) x=5;else x=6;printf("%d,%d\n",x,y);}A) 4,1 B) 6,1 C) 5,0 D) 出错信息39、有如下程序#include <stdio.h>void main( ){ int x=1,a=0,b=0;switch(x){case 0: b++;case 1: a++;case 2: a++;b++;}printf("a=%d,b=%d\n",a,b);}该程序的输出结果是__________.A) a=2,b=1 B) a=1,b=1 C) a=1,b=0 D) a=2,b=240、下面程序的输出结果是_________.#include <stdio.h>void main( ){ int a=-1,b=1,k;if ((++a<0) && (b--<=0))printf("%d %d\n",a,b);elseprintf("%d %d\n",b,a);}A) -1 1 B) 0 1 C) 1 0 D) 0 041、假定w、x、y、z、m均为int型变量,有如下程序段:w=1;x=2;y=3;z=4;m=(w<x)?w:x; m=(m<y)?m:y; m=(m<z)?m:z;则该程序段执行后,m的值是_________.A) 4 B) 3 C) 2 D) 142、以下程序的输出结果是_________.main( ){ int a=100;if (a>100) printf("%d\n",a>100);else printf("%d\n",a<=100);}A) a<=100 B) 100 C) 0 D) 143、若执行下面的程序从键盘上输入9,则输出结果是.______________#include <stdio.h>void main( ){int n;scanf("%d",&n);if (n++<10) printf("%d\n",n);else printf("%d\n",n--);}A) 11 B) 10 C) 9 D) 844、以下程序段运行结果是________.int x=1,y=1,z=-1;x+=y+=z;printf("%d\n",x<y?y:x);A) 1 B) 2 C) 4 D) 不确定的值45、有以下程序#include <stdio.h>void main( ){ int a,b,c=246;a=c/100%9;b=(-1)&&(-1);printf("%d,%d\n",a,b);}输出结果是________.A) 2,1 B) 3,2 C) 4,3 D) 2,-146、运行下面程序时,若从键盘输入数据为"123",则输出结果是_______.#include "stdio.h"void main(){ int num,i,j,k,place;scanf("%d",&num);if (num>99)place=3;else if(num>9)place=2;elseplace=1;i=num/100;j=(num-i*100)/10;k=(num-i*100-j*10);switch (place){ case 3: printf("%d%d%d\n",k,j,i);break;case 2: printf("%d%d\n",k,j);break;case 1: printf("%d\n",k);}}A) 123 B) 1,2,3 C) 321 D) 3,2,147、执行下列程序后的输出结果是_______.#include <stdio.h>void main( ){ int k=4,a=3,b=2,c=1;printf("%d\n",k<a?k:c<b?c:a);}A) 4 B) 3 C) 2 D) 148、以下条件表达式中能完全等价于条件表达式if(x)中的x 的是____.A) (x==0) B) (x!=0) C) (x==1) D) (x!=1)49、若运行下面程序时,给变量a输入15,则输出结果是______.#include <stdio.h>void main( ){ int a,b;scanf("%d",&a);b=a>15?a+10:a-10;printf("%d\n",b) ;}A) 5 B) 25 C) 15 D) 1050、执行下面程序的输出结果是________.#include <stdio.h>void main( ){ int a=5,b=0,c=0;if (a=a+b) printf("****\n");else printf("####\n");}A) 有语法错误不能编译B) 能通过编译,但不能通过连接C) 输出****D) 输出####51、为了避免嵌套的if-else语句的二义性,C语言规定else总是与______组成配对关系.A) 缩排位置相同的ifB) 在其之前未配对的ifC) 在其之前尚未配对的最近的ifD) 同一行上的if52、以下程序段__________.x=-1;do{x=x*x;} while (!x);A)是死循环B)循环执行两次C)循环执行一次D)有语法错误53、对下面程序段描述正确的是_______.int x=0,s=0;while (!x!=0) s+=++x;printf("%d",s);A) 运行程序段后输出0B) 运行程序段后输出1C) 程序段中的控制表达式是非法的D) 程序段循环无数次54、下面程序段的输出结果是_______.x=3;do { y=x--;if (!y) {printf("*");continue;}printf("#");} while(x=2);A) ## B) ##* C) 死循环D)输出错误信息55、下面程序的运行结果是_______.#include<stdio.h>void main( ){ int a=1,b=10;do{ b-=a;a++;} while(b--<0);printf("%d,%d\n",a,b);}A) 3,11 B) 2,8 C) 1,-1 D) 4,956、下面程序段的运行结果是__________.int n=0;while (n++<=2)printf("%d",n);A) 012 B) 123 C) 234 D) 错误信息57、下面程序段的运行结果是________.int x=0,y=0;while (x<15) y++,x+=++y;printf("%d,%d",y,x);A) 20,7 B) 6,12 C) 20,8 D)8,2058、下面程序的运行结果是________.#include<stdio.h>void main(){ int s=0,i=1;while (s<=10){ s=s+i*i;i++;}printf("%d",--i);}A) 4 B) 3 C) 5 D) 659、下面程序段的运行结果是________.for(x=10;x>3;x--){ if(x%3) x--;--x; --x;printf("%d ",x);}A) 6 3 B) 7 4 C) 6 2 D) 7 3 60、下面程序的运行结果是________.#include<stdio.h>void main( ){ int a,b;a=-1;b=0;do {++a;++a;b+=a;} while(a<9);printf("%d\n",b);}A) 34 B) 24 C) 26 D) 2561、下面程序段的运行结果是___________.for(i=1;i<=5;)printf("%d",i);i++;A) 12345 B) 1234 C) 15 D) 无限循环62、下面程序的输出结果是__________.#include<stdio.h>void main( ){ int n=4;while (n--) printf("%d ",n--);}A) 2 0 B) 3 1 C) 3 2 1 D) 2 1 063、以下程序运行后的输出结果是________.#include<stdio.h>void main(){ int i=10,j=0;do{ j=j+1; i--;}while(i>2);printf("%d\n",j);}A) 50 B) 52 C) 51 D) 864、有如下程序#include<stdio.h>void main(){ int x=23;do{ printf("%d",x--);}while(!x);}该程序的执行结果是_______A) 321 B) 23C) 不输出任何内容D) 陷入死循环65、以下程序段的执行结果是_______.int i,j,m=0;for(i=1;i<=15;i+=4)for(j=3;j<=19;j+=4)m++;printf("%d\n",m);A) 12 B) 15 C) 20 D) 2566、下面程序的输出结果是___________.#include<stdio.h>void main( ){ int i;for(i=1;i<6;i++){ if (i%2!=0) {printf("#");continue;}printf("*");}printf("\n");}A) #*#*# B) ##### C) ***** D) *#*#*67、下面程序的输出结果是__________.#include<stdio.h>void main( ){ int x=10,y=10,i;for(i=0;x>8;y=++i)printf("%d %d ",x--,y);}A) 10 1 9 2 B) 9 8 7 6C) 10 9 9 0 D) 10 10 9 168、执行以下程序后,输出的结果是__________.#include<stdio.h>void main( ){ int y=10;do {y--;}while (--y);printf("%d\n",y--);}A) -1 B) 1C) 8D) 069、有如下程序#include<stdio.h>void main( ){ int n=9;while(n>6) {n--;printf("%d",n);}} 该程序段的输出结果是__________.A) 987 B) 876 C) 8765 D) 987670、有如下程序#include<stdio.h>void main( ){ int i,sum=0;for(i=1;i<=3;sum++) sum+=i;printf("%d\n",sum);}该程序的执行结果是___________.A) 6 B) 3 C) 死循环D) 071、以下循环体的执行次数是_______#include<stdio.h>void main( ){ int i,j;for(i=0,j=1; i<=j+1; i+=2, j--)printf("%d \n",i);}A) 3 B) 2 C) 1 D) 072、在执行以下程序时,如果从键盘上输入:ABCdef<回车>,则输出为________.#include <stdio.h>void main( ){ char ch;while ((ch=getchar( ))!='\n'){ if (ch>='A' && ch<='Z') ch=ch+32;else if (ch>='a' && ch<'z') ch=ch-32;printf("%c",ch);}printf("\n");}A) ABCdef B) abcDEF C) abc D) DEF73、下面程序的输出结果是__________.main( ){int i,k=0, a=0, b=0;for(i=1;i<=4;i++){k++;if (k%2==0) {a=a+k; continue;}b=b+k;a=a+k;}printf("k=%d a=%d b=%d\n",k,a,b);}A) k=5 a=10 b=4 B) k=3 a=6 b=4C) k=4 a=10 b=3 D) k=4 a=10 b=474、执行下面程序段后,k的值是_________.int i,j,k;for(i=0,j=10;i<j;i++,j--)k=i+j;A) 9 B) 11 C) 8 D) 1075、以下程序的功能是:从键盘上输入若干个学生的成绩, 统计并输出最高成绩和最低成绩,当输入负数时结束输入。
C语言上机150道题
C语言上机150道题及参考答案1.某一门课程考试之后,需要统计考生(10人)的平均成绩,并找出其中的最高分和最低分。
2.从键盘输入两个正整数,输出这两个整数的商,要求商的小数点后保留5位。
例如输入355和113,输出3.14159。
3.用while循环结构编写程序打印ASCII码为33-127的字符。
4.用do-while,for循环结构编写程序打印ASCII码为33-127的字符。
5.用for循环结构编写程序打印ASCII码为33-127字符。
6.在1-500中,找出能同时满足用3除余2,用5除余3,用7除余4的所有整数,用循环结构。
7.输入一个整数将其倒着输出,如54321——12345。
8.计算s=1+1/3+1/5+…+1/n,截止到1/n<10-4。
9.从键盘输入一整数n,计算1*1+2*2+...+n*n的值。
10.用while 循环计算1+2+……+100的和。
11.用do while循环计算1+2+……+100的和。
12.用for 循环计算1+2+……+100的和。
13.输入一个小于等于10的整数n ,计算n!。
14.输入两个正整数m和n,计算m!+n!,m和n的值均小于10。
15.用循环语句,计算1~100之间的所有3的倍数之和。
16.用循环语句,计算100-200之间的所有7的倍数之和。
17.输出1-100之间,7的整数倍数或数字尾数为7的数字,统计出这些数字个数。
18.输入一行字符,分别统计出其中英文字母,空格,数字和其他字符的个数。
19.输入一个整数,统计它有几位数。
如输入367,则该数有3位数。
20.编写程序,输出1到50中间所有能被3整除的正整数。
21.把100~200之间不能被3整除的输出。
22.编程Y=1+3+5+7+...111。
23.编程y=1*1/2*1/3*1/4*1/5*1/6*...前十项之积。
24.编程输出九九乘法表。
25.求1到100奇数和。
c语言入门编程基础100题
c语言入门编程基础100题C语言是一种广泛应用于计算机编程的高级编程语言,它具有简洁、高效、灵活等特点,因此成为了许多程序员的首选。
对于初学者来说,掌握C语言的基础知识是非常重要的。
下面是一些C语言入门编程基础题目,帮助初学者巩固基础知识。
1. 编写一个程序,输出"Hello, World!"。
2. 编写一个程序,输入两个整数,然后输出它们的和。
3. 编写一个程序,输入一个整数,然后输出它的平方。
4. 编写一个程序,输入一个整数,然后输出它的绝对值。
5. 编写一个程序,输入一个字符,然后输出它的ASCII码。
6. 编写一个程序,输入一个字符,然后判断它是否为大写字母。
7. 编写一个程序,输入一个字符,然后判断它是否为小写字母。
8. 编写一个程序,输入一个字符,然后判断它是否为数字。
9. 编写一个程序,输入一个字符,然后判断它是否为字母。
10. 编写一个程序,输入一个字符,然后判断它是否为特殊字符。
11. 编写一个程序,输入一个年份,然后判断它是否为闰年。
12. 编写一个程序,输入一个整数,然后判断它是否为素数。
13. 编写一个程序,输入一个整数,然后输出它的阶乘。
14. 编写一个程序,输入一个整数,然后输出它的倒数。
15. 编写一个程序,输入一个整数,然后输出它的二进制表示。
16. 编写一个程序,输入一个整数,然后输出它的十六进制表示。
17. 编写一个程序,输入一个整数,然后输出它的八进制表示。
18. 编写一个程序,输入一个整数,然后输出它的十进制表示。
19. 编写一个程序,输入一个字符串,然后输出它的长度。
20. 编写一个程序,输入一个字符串,然后输出它的反转字符串。
21. 编写一个程序,输入一个字符串,然后判断它是否为回文字符串。
22. 编写一个程序,输入一个字符串,然后判断它是否为有效的IP 地址。
23. 编写一个程序,输入一个字符串,然后判断它是否为有效的邮箱地址。
24. 编写一个程序,输入一个字符串,然后判断它是否为有效的手机号码。
基础的c语言程序试题及答案
基础的c语言程序试题及答案基础的C语言程序试题及答案1. 题目:编写一个C语言程序,计算并输出1到100之间所有奇数的和。
答案:```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 != 0) {sum += i;}}printf("1到100之间所有奇数的和为:%d\n", sum);return 0;}```2. 题目:编写一个C语言程序,实现一个简单的计算器,能够进行加、减、乘、除运算。
答案:```c#include <stdio.h>int main() {double num1, num2;char operator;double result;printf("请输入第一个数字:");scanf("%lf", &num1);printf("请输入运算符(+,-,*,/):"); scanf(" %c", &operator);printf("请输入第二个数字:");scanf("%lf", &num2);switch (operator) {case '+':result = num1 + num2;break;case '-':result = num1 - num2;break;case '*':result = num1 * num2;break;case '/':if (num2 != 0) {result = num1 / num2;} else {printf("除数不能为0\n");return 1;}break;default:printf("无效的运算符\n");return 1;}printf("%.2lf %c %.2lf = %.2lf\n", num1, operator, num2, result);return 0;}```3. 题目:编写一个C语言程序,实现字符串的反转。
c语言入门试题及答案
c语言入门试题及答案1. 以下哪个选项是C语言中正确的数据类型?A) intB) floatC) stringD) all of the above答案:D2. C语言中,用于定义一个整型变量的关键字是什么?A) varB) intC) letD) type答案:B3. 在C语言中,如何声明一个浮点型数组?A) int array[10];B) float array[10];C) double array[10];D) real array[10];答案:B4. 下列哪个选项是C语言中正确的注释方式?A) // This is a commentB) /* This is a comment */C) // This is a commentD) # This is a comment答案:A5. C语言中,用于定义一个字符串的关键字是什么?A) stringB) charC) textD) none of the above答案:B6. 在C语言中,如何打印一个字符串?A) printf("Hello, World!");B) print("Hello, World!");C) cout << "Hello, World!";D) echo "Hello, World!";答案:A7. 下列哪个选项是C语言中正确的函数定义?A) int function() { return 0; }B) int function() { return 0; }C) void function() { }D) all of the above答案:D8. 在C语言中,如何计算两个整数的和?A) int sum = a + b;B) int sum = add(a, b);C) int sum = a + b;D) both A and B答案:D9. C语言中,如何声明一个指向整型的指针?A) int *ptr;B) pointer int ptr;C) int ptr;D) int *ptr;答案:A10. 在C语言中,如何交换两个变量的值?A) temp = a; a = b; b = temp;B) swap(a, b);C) a = a + b; b = a - b; a = a - b;D) all of the above答案:A11. C语言中,如何定义一个结构体?A) struct MyStruct { int a; float b; };B) type MyStruct { int a; float b; };C) class MyStruct { int a; float b; };D) struct MyStruct { int a; float b; }; 答案:A12. 下列哪个选项是C语言中正确的条件语句?A) if (condition) { /* code */ }B) switch (condition) { /* code */ }C) case (condition): /* code */D) all of the above答案:A13. 在C语言中,如何定义一个枚举类型?A) enum Color { Red, Green, Blue };B) enum Color { 0 Red, 1 Green, 2 Blue };C) list Color { Red, Green, Blue };D) all of the above答案:A14. C语言中,如何定义一个宏?A) #define PI 3.14159B) const double PI = 3.14159;C) const double PI = 3.14159;D) both A and B答案:A15. 下列哪个选项是C语言中正确的数组初始化方式?A) int array[5] = {1, 2, 3, 4, 5};B) int array[5] = {1, 2, 3};C) int array[] = {1, 2, 3, 4, 5};D) all of the above答案:D。
(完整版)C语言考试题库及答案
(完整版)C语言考试题库及答案一、选择题1. 以下哪个选项是C语言的合法标识符?A. intB. 2abcC. voidD. a+b答案:C2. 在C语言中,下列哪个选项是正确的数据类型?A. floatB. integerC. doubleD. All of the above答案:D3. 若变量定义如下:int a = 5;,则执行语句printf("%d", a++); 后,a的值是多少?A. 4B. 5C. 6D. 无法确定答案:C4. 以下哪个函数用于动态分配内存?A. malloc()B. alloc()C. new()D. calloc()答案:A5. 在C语言中,哪个运算符用于取模(取余)?A. %B. /C. &D. |答案:A以下是判断题部分:6. C语言中的数组名可以作为指向该数组首元素的指针使用。
()答案:正确7. 在C语言中,结构体变量可以作为函数的参数传递。
()答案:正确8. 在C语言中,静态存储类别的变量在程序运行期间始终占据内存空间。
()答案:正确二、填空题9. 在C语言中,定义一个整型变量需要使用关键字______。
答案:int10. 若变量定义如下:int a = 10;,则执行语句printf("%d", a--); 后,a的值是______。
答案:911. 在C语言中,用于动态分配内存的函数是______。
答案:malloc12. 在C语言中,用于释放动态分配的内存的函数是______。
答案:free13. 在C语言中,用于清空标准输入缓冲区的函数是______。
答案:getchar()三、编程题14. 编写一个C语言程序,实现以下功能:输入一个整数,输出它的阶乘。
答案:```c#include <stdio.h>int main() {int n, i;long factorial = 1;printf("Enter an integer: ");scanf("%d", &n);if (n < 0) {printf("Factorial of a negative number doesn't exist.\n");} else {for (i = 1; i <= n; i++) {factorial = i;}printf("Factorial of %d is %ld\n", n, factorial);}return 0;}```15. 编写一个C语言程序,实现以下功能:输入一个字符串,判断它是否是回文(正读和反读都一样的字符串)。
C语言基础练习题(含答案)
第一章C语言基础知识1.1 选择题1. 以下不是C语言的特点的是()。
A、语言简洁紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件操作D、C语言移植性好2.下列字符序列中,不可用作C语言标识符的是()。
A.abc123 B.no.1 C._123_ D._ok3.正确的C语言标识符是()。
A._buy_2 B.2_buy C.?_buy D.buy?4. 请选出可用作C语言用户标识符的一组标识符()。
A.void B.a3_b3C.For D.2a define _123 -abcDOWORD IF Casesizeof5.下列符号中,不属于转义字符的是()。
A.\\ B.\0xAA C.\tD.\06.不属于C语言关键字的是()。
A.int B.break C.while D.character7.是C语言提供的合法关键字的是()。
A.Float B.signedC.integer D.Char8.以下不能定义为用户标示符的是()。
A.scanf B.Void C._3com_ D.int9.一个C程序是由()。
A.一个主程序和若干子程序组成B.一个或多个函数组成C.若干过程组成D.若干子程序组成10. C语言程序的基本单位是()。
A.程序行B.语句C.函数D.字符11.下列说法中,错误的是()。
A.每个语句必须独占一行,语句的最后可以是一个分号,也可以是一个回车换行符号B.每个函数都有一个函数头和一个函数体,主函数也不例外C.主函数只能调用用户函数或系统函数,用户函数可以相互调用D.程序是由若干个函数组成的,但是必须有、而且只能有一个主函数12.以下说法中正确的是()。
A.C语言程序总是从第一个定义的函数开始执行B.在C语言程序中,要调用的函数必须在main( )函数中定义C.C语言程序总是从main( )函数开始执行D.C语言程序中的main( )函数必须放在程序的开始部分13. C编译程序是()。
初级c语言试题及答案
初级c语言试题及答案一、选择题1. 下列哪个是合法的C语言注释?A. //这是一个注释B. /* 这是一个注释 */C. /** 这是一个注释 */D. #这是一个注释#2. 下列哪个是正确的C语言标识符?A. 2nameB. _nameC. classD. #name#3. 在C语言中,下列哪个是常量?A. xB. PIC. sumD. printf4. C语言中,下列哪个是正确的赋值运算符?A. +B. -C. =D. ==5. 下列哪个是正确的C语言语句?A. printf('Hello World');B. printf("Hello World");C. printf["Hello World"];D. printf{"Hello World"};二、填空题1. C语言中,用于输出到控制台的函数是__。
答案:printf2. C语言中,用于从控制台输入的函数是__。
答案:scanf3. 在C语言中,用于判断条件是否成立的关系运算符是__。
答案:==4. C语言中,用于声明整型变量的关键字是__。
答案:int5. C语言中,用于结束程序的函数是__。
答案:exit()三、编程题请编写一个C语言程序,实现以下功能:从控制台输入两个整数,然后输出它们的和。
```C#include <stdio.h>int main() {int num1, num2, sum;printf("请输入第一个整数:");scanf("%d", &num1);printf("请输入第二个整数:");scanf("%d", &num2);sum = num1 + num2;printf("两个整数的和为:%d\n", sum);return 0;}```以上是初级C语言试题及答案,选择题部分测试基础的语法知识,填空题测试常见关键字和函数的掌握情况,编程题要求实际编写一个简单的求和程序。
c语言初级考试题及答案
c语言初级考试题及答案1. 以下哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. variable-nameD. variable name答案:B2. C语言中,哪个关键字用于声明一个变量?A. defineB. varC. letD. int答案:D3. 在C语言中,以下哪个选项是正确的数组声明?A. int array[10];B. int array[];C. int [10] array;D. int array=10;答案:A4. C语言中,哪个函数用于计算并返回字符串的长度?A. strlen()B. length()D. length_of()答案:A5. 在C语言中,以下哪个选项是正确的条件语句?A. if x > 0 then y = x;B. if (x > 0) y = x;C. if x > 0 y = x;D. if (x > 0) { y = x; }答案:D6. C语言中,哪个关键字用于定义一个函数?A. functionB. defC. defineD. void答案:D7. 在C语言中,以下哪个选项是正确的循环语句?A. for i = 0; i < 10; i++B. for (i = 0; i < 10; i++)C. for i = 0 to 10D. for i in range(10)答案:B8. C语言中,哪个函数用于将字符串转换为整数?A. atoi()C. toint()D. strint()答案:A9. 在C语言中,以下哪个选项是正确的二维数组声明?A. int array[3][2];B. int array[3,2];C. int array[3][2];D. int array[][] = {1, 2, 3, 4, 5, 6};答案:A10. C语言中,哪个关键字用于定义一个结构体?A. structB. classC. unionD. type答案:A。
c语言考试试题基础版及答案
c语言考试试题基础版及答案一、选择题(每题2分,共20分)1. 下列哪个选项是C语言中的关键字?A. intB. INTC. IntegerD. int_答案:A2. C语言中,用于定义一个字符型变量的关键字是?A. charB. characterC. stringD. var答案:A3. 在C语言中,下列哪个运算符用于比较两个值是否相等?A. ==B. =C. !=D. =答案:A4. 下列哪个选项不是C语言中的控制结构?A. ifB. forC. whileD. switch答案:D5. 在C语言中,下列哪个函数用于将整数转换为字符串?A. atoiB. itoaC. sprintfD. printf答案:B6. C语言中,用于定义一个整型数组的语法是?A. int array[10];B. int [10] array;C. int array[];D. int array=10;答案:A7. 下列哪个选项是C语言中的正确注释?A. // 这是一个注释B. /* 这是一个注释 */C. //* 这是一个注释D. /* 这是一个注释答案:A8. 在C语言中,用于定义一个函数的关键字是?A. functionB. defC. defineD. void答案:D9. 下列哪个选项是C语言中的正确字符串字面量?A. "Hello, World!"B. 'Hello, World!'C. "Hello, WorldD. Hello, World!答案:A10. 在C语言中,用于声明一个无返回值的函数的关键字是?A. intB. voidC. charD. float答案:B二、填空题(每题2分,共20分)1. 在C语言中,定义一个整型变量的正确语法是:int ____________; 答案:变量名2. 用于计算两个整数之和的C语言运算符是:__________;答案:+3. 如果要在C语言中声明一个名为“result”的浮点型变量,应使用:float ____________;答案:result4. 在C语言中,用于定义一个二维数组的语法是:int____________[3];答案:数组名5. C语言中,用于声明一个指向整型变量的指针的语法是:int*____________答案:指针名6. 使用C语言中的printf函数输出字符串时,需要在字符串前加上的字符是:__________;答案:"7. 在C语言中,用于从键盘读取一个字符的函数是:__________;答案:getchar()8. 如果要声明一个名为“total”的整型变量并初始化为0,应使用:int total = __________;答案:09. 在C语言中,用于定义一个静态局部变量的关键字是:__________; 答案:static10. C语言中,用于计算两个浮点数之差的运算符是:__________;答案:-三、编程题(每题10分,共20分)1. 编写一个C语言程序,计算并输出100以内所有偶数的和。
c语言入门基础100题
c语言入门基础100题设有语句:printf("%2d\n",2010);,则以下叙述正确的是A)程序运行时输出 2010B)程序运行时输出 20C)程序运行时输出 10D)指定的输出宽度不够,编译出错答案:A以下选项中,与 k = n++完全等价的表达式是A)k=n, n=n+1B)n=n+1, k=nC)k = ++nD)k += n+1答案:A以下叙述中错误的是A)在一个程序中,每个模块均可以独立编译运行B)程序“模块化”有利于任务的分解简化C)允许对函数单独进行编译,是 C 语言实现“模块化”的基础D)采用模块化结构,可以提高编程效率答案:A以下叙述中错误的是A) main()是 C 语言主函数的起始行B) main()作为主函数必须位于源程序的起始位置C)main()是 C 程序执行的起始行D)main 是不可替代的主函数名答案:B以下叙述中错误的是A)若用户标识符的命名与预定义标识符相同,则命名无效B)若用户标识符的命名与关键字相同,将产生编译错误C)若用户标识符的命名与预定义标识符相同,则预定义标识符失去原有含义D)若用户标识符的命名与预定义标识符相同,则可能引发运行错误答案:A以下不属于 C 语言整型常量的是A) 0XaB)0LC) -018D)200U答案:C若有如下定义和语句:double x=1.5;x++;则以下叙述中正确的是A)变量 x 经自增 1 运算后的值是 2.5B)x 是实型变量,不可以做自增 1 运算C)变量 x 经自增 1 运算后的值是 1.6D)变量 x 经自增 1 运算后的值是 2.0答案:A设有定义:double x;,以下选项中不能将输入数据 3.14 读入赋给变量 x 的是A) scanf("%4lf",&x);B)scanf("%lf",&x);C)scanf("%le",&x);D) scanf("%4.2f",&x);答案:D以下说法正确的是A)C 语言程序运行时可以从键盘上读入用户输入的字符或数据,并依此改变程序的运行步骤B)C 语言程序运行时可以从键盘上读入用户以二进制输入的指令,并执行这些指令C)C语言程序运行时可以从键盘上读入用户输入的C源程序并逐行执行D)C 语言程序运行时可以从键盘上读入用户输入的 C 源程序并附加到本程序的尾部一并执行答案:A以下说法错误的是A)程序模块化的目的之一是提高程序的执行速度B)程序模块化的目的之一是提高程序编制的效率C)程序模块化的目的之一是提高程序代码复用率D)程序模块化的目的之一是提高调试程序的效率答案:A以下属于 C 语言标识符的是A) 6 6 6B)#6#C)@6@D) 6答案:D以下属于 C 语言实型常量的是A)6e+6B)e6+6C)+6eD).e+6答案:A以下说法正确的是A)赋值语句是一种可执行语句,应当出现在函数的可执行部分B)赋值语句可以出现在函数中的任意位置C)赋值语句可以出现在函数外单独执行D)赋值语句可以出现在源程序中的任意位置答案:A若有程序段char c;scanf("%lf%c", &d, &c);如果想把 2.3 输入给变量 d,字符’f’输入给变量 c,程序运行时正确的输入是A)2.3fB)2.3 fC)2.3’f’D)2.3 ‘f’答案:A以下叙述中正确的是A)循环结构、选择结构、顺序结构是结构化程序的三种基本结构B)计算机能直接运行未经编译的 C 语言程序C)复杂算法不能使用 N-S 流程图来描述D)计算机能够直接处理不超过 20 行源码的简单 C 语言程序答案:A以下叙述中正确的是A) 程序要包含全部基本结构才是结构化程序B) 任何复杂问题都可以使用只包含三种基本结构的算法来解决C)不运行程序是不能发现程序中的语法错误的D)C 语言程序需要包含 MAIN 函数答案:B以下选项中,合法的 C 语言常量是A)1.01C)”\2.0D)2.0Kb答案:A以下选项中,合法的 C 语言实数是A) 0.1e0.1B) .1e0C)E10D)14.12E答案:B设 a、b、c 是已定义的整型变量且已正确赋初值,以下赋值语句中,错误的是A)a = (b = 3) = 1;B)a = (b = 0) + c + 0;C)a = b = c + 0;D)a = 0 + (b = c = 0);答案:A有如下程序#include <stdio.h>main(){int x = 072;printf(">%d<\n", x+1);}程序运行后的输出结果是B)>73<C)>142<D)>073<答案:A若变量已经定义且正确赋值,则针对程序段:temp=a; a=b; b=temp;以下叙述中正确的是A)此段程序是从左至右依次执行B)C 语言的顺序结构不允许将多条语句写在一行里C)此程序段的执行顺序是,先执行 b=temp;,再执行 a=b;,最后执行 temp=a;D)将此段程序的前两个分号改成逗号,后面一个不变,则不能实现a 和 b 中值的交换答案:A设变量 a,b 和 ch 已正确定义并赋初值,则以下叙述中错误的是A)语句 ch=(unsigned int) a+b;是对 a 与 b 之和进行强制类型转换,结果赋值给变量 chB)运算符%的运算对象只能是整数类型C)逗号表达式的值是最后一个表达式的运算结果D)复合运算:a*=b+ch 是将变量 b、ch 之和与 a 相乘,结果再给a 赋值答案:A有如下两个传统流程图(a)和(b):以下关于两个流程图特点的叙述正确的是A) 两个表达式逻辑相同时,流程图功能等价B)语句 2 一定比语句 1 多执行一次C) 语句 2 至少被执行一次D)两个表达式逻辑相反时,流程图功能等价答案:C以下可以正确且安全的用作用户标识符的一组选项是A) Switch, unsignedB) _32int, long64C)Abc, getchD)3break, enter答案:B以下关于运算符"/"的叙述正确的是A)只有其两边运算对象的类型都是整型时,所做运算为整数整除运算B)总是进行双精度除法运算C)总是进行单精度除法运算D)不允许 char 型对象参与运算答案:A若有定义:char ch; int a; double d;,当输入为12345 678910.36 时,以下选项中能给各个变量正确输入数据的是A)scanf("%d%c%lf",&a,&ch,&d);B)scanf("%5d%2c%7.2lf",&a,&ch,&d);C)scanf("%d%c%lf",a,ch,d);D)scanf(“5d%2c%7.2lf%”,&a,&ch,&d);答案:A以下叙述中错误的是A).OBJ 文件和.EXE 文件都是可直接执行的二进制文件B)用户按规定语法编写的 C 程序不是二进制文件C)C 源程序经编译无误后将生成一个 .OBJ 的二进制文件D).OBJ 文件经“连接程序”生成的.EXE 文件是二进制文件答案:A以下关于注释的叙述中错误的是A)注释的边界符号“/”和“/”必须成对出现且可以嵌套B)C 语言允许注释出现在程序中任意合适的地方C)注释的内容仅用于阅读,对程序的运行不起作用D)注释的边界符号“/”和“*”之间不允许加入空格答案:AC 语言常量的类型从字面形式上可区分,以下判断中正确的是A) ‘\025’—字符串B)2E3 —整型C) 2.0E3 —实型D)“a”—字符型答案:C以下选项中,算术表达式的值与其他三个不同的是A)3/5B)3./5C)3/5.D)3.0/5.0答案:A设有定义:int k=3,i=2; 以下选项中,变量 k 的值与其他三个不同的是A) k=–i;B) k=i–;C)k=i-1;D)k-=i;答案:B设有如下语句:int k=0;k=printf(“OK\n”);则以下叙述中正确的是A)变量 k 得到的是输出字符的总个数 3B)变量 k 得到的是输出的可见字符个数 2C)printf 必须作为独立语句出现D)变量 k 仍保持初值 0答案:A以下说法正确的是A)C 语言被称为“高级语言”是因为它用接近人们习惯的自然语言和数学语言作为表达形式,使人们学习和操作起来感到十分方便B)C 语言被称为“高级语言”是因为它能接受和处理由 0 和 1 的代码构成的二进制指令或数据C)C 语言被称为“高级语言”是因为计算机能直接识别并执行由这种语言编写的程序D)C 语言被称为“高级语言”是因为它是用来开发高级软件的语言答案:A以下说法错误的是A) C 语言提供了定义函数的功能B) C 语言提供了定义函数和子程序的功能C)C 语言中没有子程序的概念D)C 语言既有库函数也可以自定义函数答案:B以下是正确 C 语言标识符的是A)8B)8C)8D)-8-答案:A以下是正确 C 语言实型常量的是A) e+8B) +8.8e+8C)+8e.8D).8e+8.答案:B算术运算符和圆括号有不同的运算优先级,对于表达式:a+b+c*(d+e),关于执行顺序,以下说法正确的是A)先执行 a+b 得 r1,再执行(d+e)得 r2,再执行 cr2 得 r3,最后执行 r1+r3 得表达式最后结果B)先执行(d+e)得 r2,再执行 cr2 得 r3,再执行 a+b 得 r1,最后执行 r1+r3 得表达式最后结果C)先执行(d+e)得 r2,再执行 cr2 得 r3,再执行 b+r3 得 r4,最后执行 a+r4 得表达式最后结果D)先执行 a+b 得 r1,再执行 r1+c 得 r5,再执行(d+e)得 r2,最后执行 r5r2 得表达式最后结果答案:A若有程序段:int a,b; char d;scanf("%d%c%d", &a, &d, &b);若想把 12 输入给变量 a,字符’k’输入给变量 d,34 输入给变量 b,程序运行时正确的输入是A) 12’k’34B)12 k 34C) 12k34D)12 ‘k’ 34答案:C以下叙述中正确的是A)一个程序要被称为结构化程序,则只能包含循环结构、选择结构、顺序结构B)C 语言源程序即使不编译,也是可以直接运行的C)使用 N-S 流程图只能描述简单的算法D)复杂算法是指不能分解成子任务的算法答案:A下面说法正确的是A)使用只包含三种基本结构的算法可以求解复杂的问题B)C 语言源程序需要把所有过长的函数保存在单独的源文件中才能通过编译C)有一些特殊的程序语法错误,只有在运行时才能被发现D)一些完成简单任务的 C 语言程序,可以不包含 main()函数答案:A以下选项中,合法的 C 语言常量是A) “C++’B) 9.01C)\0.0”答案:B以下选项中,合法的 C 语言实数是A) .2e1B)3.1e3.1C)E09D)1.23E答案:A设 a,b,c 是整型变量且已正确赋有初值,以下选项中的赋值表达式错误的是A)a = (b = 0) = 8B)a = (b = 1) + c + 1C)a = b = c + 1D)a = 8 + (b = c = 1)答案:A有如下程序#include <stdio.h>main(){int x = 032;printf("%d\n", x);}程序运行后的输出结果是A) 32B) 26D)50答案:B以下叙述正确的是A)对于只包含表达式语句的程序段,执行顺序与书写顺序一致B)C 程序的执行是从源文件的开头,一行一行向下执行,每行都会被执行到C)C 程序的执行一定是从主函数开始,从主函数结束D)每个 C 源文件都应当有一个主函数答案:A以下叙述正确的是A)使用符号\可以将一条#include 命令写在多行里B)#include <stdio.h> 是 C 程序的一条语句C)一个#include 行可以包含多个文件,文件名用逗号分开D)一个#include 行可以包含多个文件,且最后一个文件起作用答案:A以下选项中,合法的 C 语言标识符是A) a-bB)%XC)_test!D) _123答案:D下面不合法的常量数据是A)’\0123321’B)0x3f7b8a90C)’\0x6d’D).023E-5答案:A以下说法正确的是A)复合语句中包含的语句种类没有限制B)复合语句中不能有分支语句C)复合语句中不能有循环语句D)一条复合语句不能超过 50 行答案:A若有定义:int a,b,c;,想通过语句:scanf("%d,%d%d",&a,&b,&c);把 1、2、3 分别输入给变量 a、 b、c,则正确的键盘输入是A)1,23<回车>B)1,2,3<回车>C)1<回车>23D)1<回车>2<回车>3答案:A以下叙述中正确的是A)C 语言既可以用来编写系统软件,又可以用来编写应用软件B)机器中只要安装有任一种编译程序,就能对 C 源程序进行编译C)若程序中不使用 C 语言提供的库函数,则可以不运行连接程序D)调试程序时若发现语法错误,改正后即可直接运行,无需再次编译答案:A以下叙述中正确的是A) 一个正确的算法可以没有输出结果B) 一个正确的算法可以不需要输入数据C)传统流程图使用方便灵活,但无法描述复杂的算法D)N-S 流程图不能用于描述复杂的算法答案:B以下叙述中正确的是A)C 语言标识符的规定长度因系统而异B)C 语言编译系统对标识符的长度没有规定C)C 语言规定标识符长度最多允许 16 个字符,超长报错D)C 语言规定以下划线开头的标识符长度必须大于 1答案:A以下完全正确的一组常量是A)0x0 123.B)01a .12e3C)0.3L 1.2e-1D)-12U 12.E0答案:A与数学式对应的 C 语言表达式是A)(pow(x,2)-pow(y,2))cos(3.141592645/180)B)(pow(2,x)-pow(2,y))cos(3.141592645/180)C)(xx-yy)*cos(45)D)(x2-y2)*cos(45)答案:A设有定义语句:double x=123.456;则语句printf("%6.2f,%3.0f\n",x,x);的输出结果是A) 123.45,123B) 123.46,123C)123.46,123.0D)123.45,123.答案:B以下叙述错误的是A)C 语言中提供了子程序的概念,可以和函数完成一样的功能B)C 语言允许对函数单独进行编译,可以实现模块化C)C 语言提供了丰富的数据类型D)C 语言是结构化程序设计语言,结构化程序由顺序结构、选择结构和循环结构三种基本结构组成答案:A以下不能定义为用户标识符的是A) _B)MainC) sizeofD)_int答案:C以下不能作为合法常量的是A) 1.234e04B) 1.234e0.4C)1.234e+4D)1.234e0答案:B若有定义:int k=7, x=12;,则以下表达式值为 3 的是A)(x %= k) - (k %= 5)B)x %= (k %= 5)C)x %= (k - k % 5)D)x %= k - k % 5答案:A以下有关 scanf 函数的叙述中错误的是A)在 scanf 函数的格式字符前既可以加入正整数指定输入数据所占的宽度,也可以对实数指定小数位的宽度B)scanf 函数有返回值,其值就是本次调用 scanf 函数时正确读入的数据项个数C)scanf 函数从输入字符流中按照格式控制指定的格式解析出相应数据,送到指定地址中D)在 scanf 函数中的格式控制字符串不会输出到屏幕上答案:A有以下程序#include <stdio.h>void main(){double x=3.14159;printf("%f\n", (int)(x*1000+0.5)/(double)1000);}程序运行后的输出结果是A) 3.143000B)3.141000C) 3.142000D)3.140000答案:C以下说法正确的是A)C 语言只接受八进制、十进制、十六进制的数B)C 语言只接受二进制、八进制、十六进制的数C)C 语言只接受二进制、十进制、十六进制的数D)C 语言只接受十进制的数答案:A以下说法正确的是A) 由三种基本结构组成的结构化程序只能解决一些数学上有解析解的问题B)由三种基本结构组成的结构化程序只能解决一些简单的问题C)由三种基本结构组成的结构化程序只能解决那些可以结构化的问题D) 由三种基本结构组成的结构化程序可以解决任何复杂的问题答案:D以下说法正确的是A)C 语言标识符中可以出现多个字母、数字和下划线字符B)C 语言标识符中仅出现下划线字符是不允许的C)C 语言标识符中字母、数字和下划线字符必须同时出现D)C 语言标识符中字母、数字和下划线字符不能同时出现答案:A以下说法正确的是A)C 语言中的常量是指在程序运行过程中其值不能被改变的量B)C 语言中的常量是指在程序运行过程中经常被改变值的量C)C 语言中的常量是指在程序运行过程中经常被用到的变量D)C 语言中的常量是指在程序运行过程中经常被改变数据类型的量答案:A若有定义 float a=12.3f; double b=456.78; 若想用 printf函数输出 a 和 b 的值,关于输出格式,以下说法正确的是A) 只能用%lf 输出 a,用%lf 输出 bB)只能用%f 输出 a,用%lf 输出 bC) 既可以用%f 输出 a,也可以用%f 输出 bD)只能用%lf 输出 a,用%f 输出 b答案:C若有定义:double a; char d; float b;若想把 1.2 输入给变量 a,字符’k’输入给变量 d,3.4 输入给变量 b,程序运行时键盘输入:1.2 k 3.4 <回车>则以下正确的读入语句是A)scanf("%lf %c %f", &a, &d, &b);B)scanf("%lf%c%f", &a, &d, &b);C)scanf("%f %c %f", &a, &d, &b);D)scanf("%f%c%f", &a, &d, &b);答案:A下面叙述中正确的是A)用任何计算机高级语言书写的程序都必须转换为计算机指令序列才能执行B)程序是用纯粹的英文所表示的人们头脑中解决问题或进行计算的步骤C)算法仅仅是用计算机高级语言书写的计算机解题的步骤D)用计算机汇编语言书写的程序是计算机可以直接执行的答案:A下面叙述中错误的是A) C 语言程序是由函数组成的B) C 语言的函数可以直接使用,无需事先定义或声明C)C 语言的函数就是一段程序D)C 语言的函数可以单独编译答案:B若有定义:int a=100;则语句printf("%d%d%d\n",sizeof(“a”),sizeof(a),sizeof(3.14));的输出是A) 328B) 248C)238D)421答案:B若有定义:int a=3,b;,则执行语句:b=(a++,a++,a++);后,变量 a 和 b 的值分别是A)6,5B)8,7C)6,3D)5,6答案:A有以下程序段int a=3,b;b=a+3;{int c=2;a*=c+1;}printf("%d\n",a);下面关于此段程序的说法,正确的是A)这段程序的输出是 9B)这段程序中存在有语法错误的语句C)这段程序的输出是 7D)可执行语句 b=a+3;后,不能再定义变量 c答案:A以下叙述中正确的是A)在 C 语言中,常量名也要遵守标识符的命名规则B)对单目运算符来说,运算对象一定在其右侧C)标识符的首字符必须是下划线、字母,其他字符可以是任意的键盘可键入字符D)变量占用内存,常量不占用内存答案:A下面说法正确的是A)结构化程序的基本结构有三种,分别是循环结构、选择结构和顺序结构B)计算机只能执行顺序结构的 C 语言源程序C)循环结构无法使用 N-S 流程图描述D)一般称含有 20 条以内语句的算法为简单算法,超过 20 条则不可能是简单算法答案:A下面说法正确的是A) 任何函数只能有一种基本结构B)MAIN()函数是每一个 C 语言程序必须定义的C) 任何复杂问题都可以只使用三种基本结构来解决D)只要程序使用基本结构编写,运行时就不会出错答案:C以下选项中,合法的 C 语言常量是A) C++’B) 1.0C)"\0.\0D)2B答案:B以下选项中,合法的 C 语言实数是A).9E0B)E22C)0.41ED).8e0.01答案:A设 a,b,c 是整型变量,以下选项中的赋值表达式错误的是A)a = 1 = (b = 1) = 1B)a = (b = 0) * (c + 0)C)a = b = c * 0D)a = 1 % (b = c == 9) + 46答案:A有如下程序#include <stdio.h>main(){char *msg = “Hello”;int x = 012;printf("%s,X=%d.\n", msg, x+1);}程序运行后的输出结果是A) He,X=13.B) Hello,X=11.C)HelX=121.D)Hello,X=013.答案:B以下说法正确的是A)C 语言只接受八进制、十进制、十六进制的数B)C 语言只接受十进制的数C)C 语言接受除二进制之外任何进制的数D)C 语言接受任何进制的数答案:A以下说法错误的是A)由三种基本结构组成的结构化程序不能解决过于复杂的问题B)由三种基本结构组成的结构化程序能解决一些简单的问题C)由三种基本结构组成的结构化程序能解决递归问题D)由三种基本结构组成的结构化程序能解决数学上有解析解的问题答案:A以下说法错误的是A)C 语言标识符必须以字母开头B)C 语言标识符中下划线字符可以出现在任意位置C)C 语言标识符不能全部由数字组成D)C 语言标识符中可以有多个字母、数字和下划线字符答案:A以下说法错误的是A)C 语言中的常量是指在程序运行过程中经常被用到的变量B)C 语言中的常量是指在程序运行过程中其值不能被改变的量C)C 语言中的常量可以用一个符号名来代表D)C 语言中的常量可以用宏来定义答案:A若有定义: int a=1234, b=-5678; 用语句 printf("%±6d%±6d",a,b); 输出,以下正确的输出结果是A) 1234 -5678 (中间有两个空格,最后有一个空格)B) +1234 -5678 (最前面有一个空格,中间有一个空格)C)±1234±5678 (最前面和最后均无空格)D) +1234 -5678 (中三间有一个空格,最后有一个空格)答案:D若有定义:double a; float b; short c;若想把 1.2 输入给变量 a,3.4 输入给变量 b,5678 输入给变量 c,程序运行时键盘输入:1.2 3.4 5678<回车>则以下正确的读入语句是A)scanf("%lf%f%hd", &a, &b, &c);B)scanf("%lf%lf%hd", &a, &b, &c);C)scanf("%lf%lf%d", &a, &b, &c);D)scanf("%f%f%d", &a, &b, &c);答案:A一个算法应当具有五个特性,以下叙述中正确的是A)有穷性、确定性、可行性、有零个或多个输入、有一个或多个输出B)有穷性、确定性、复杂性、有零个或多个输入、有一个或多个输出C)有穷性、确定性、可行性、必须要有一个以上的输入、有一个或多个输出D)有穷性、确定性、复杂性、有零个或多个输入、必须要多个输出答案:A以下不能定义为用户标识符的是A) VoidB)scanfC) intD)3com答案:C以下不能作为合法常量的是A)‘cd’B)1.234e04C)"\a"D)’\011’答案:A若有定义:int a=1, b=2, c=3, d=4, m=2, n=2;,则执行(m=a>b) && (n=c>d)后 n 的值是A)3B)2C)4D)1答案:B有说明语句:int a,b;,如果输入 111222333,使得 a 的值为111,b 的值为 333,则以下正确的语句是A)scanf("%3d%*3c%3d", &a, &b);B)scanf("%*3d%3c%3d", &a, &b);C)scanf("%3d%3d%*3d", &a, &b);D)scanf("%3d%*2d%3d", &a, &b);答案:A有以下程序#include <stdio.h>void main(){double x = 2.0, y;if (x < 0.0) y=0.0;else if (x < 10.0) y = 1.0 / x;else y = 1.0 ;printf("%f\n", y);}程序运行后的输出结果是A) 0.250000B)0.000000C) 0.500000D)1.000000答案:C以下叙述中错误的是A)用 C 语言编写的是机器语言程序B)用高级语言编写的程序称为“源程序”C)由编译器编译生成的二进制代码称为“目标程序”D)由三种基本结构构成的程序是结构化程序答案:A以下合法的用户标识符是A)12315B)2xC)m$D)I-max答案:A以下定义变量 i、j、k 并赋初值的语句,正确的是A)int i=0,j=0,k=0;B)int i=0;j=0;k=0;C)int i=j=k=0;D)int i=0;j=i;k=j;答案:A以下叙述中错误的是A) 无符号整数不可以是负数B)整型变量不能存放实数C) 实型变量可以精确存放整数D)负整数在内存中以“补码”形式存放答案:C若有定义语句:int a=2;,则以下表达式值不等于 3 的是A)a=a++B)a=a+1C)a+=1D)a=++a答案:A设有定义:double x=5.1012;,若要求只输出 x 的整数部分,以下不能实现此要求的语句是A) printf ( " x=%1.0lf\n",x);B)printf ( " x=%2.0f\n",x);C)printf ( " x=%.0f\n",x);D) printf ( " x=%2d\n",x);答案:D有以下程序(字母 A 的 ASCII 代码为 65)#include <stdio.h>main(){char c1 = ‘A’, c2 = ‘Y’;printf("%d, %d\n", c1, c2 );}程序运行后的输出结果是A) A, YB) 65, 89C)65, 90D)输出格式不合法,输出出错信息答案:B若变量已正确定义,则以下 for 循环for ( x=0,y=0; ( y!=123 ) && ( x<4 ); x++ );A)执行 4 次B)执行 3 次C)执行次数不确定D)执行 123 次答案:A。
c语言初级试题及答案
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("100以内所有偶数的和是:%d\n", sum);return 0;}```2. 题目:使用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;}```3. 题目:编写一个C语言程序,实现两个整数的交换。
答案:```c#include <stdio.h>void swap(int *a, int *b) {int temp = *a;*a = *b;*b = temp;}int main() {int x, y;printf("请输入两个整数:");scanf("%d %d", &x, &y);swap(&x, &y);printf("交换后的结果是:%d %d\n", x, y);return 0;}```4. 题目:使用C语言编写一个程序,计算并输出1到100的整数和。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.某一门课程考试之后,需要统计考生(10人)的平均成绩,并找出其中的最高分和最低分。
2.从键盘输入两个正整数,输出这两个整数的商,要求商的小数点后保留5位。
例如输入355和113,输出3.14159。
3.用while循环结构编写程序打印ASCII码为33-127的字符。
4.用do-while,for循环结构编写程序打印ASCII码为33-127的字符。
5.用for循环结构编写程序打印ASCII码为33-127字符。
6.在1-500中,找出能同时满足用3除余2,用5除余3,用7除余4的所有整数,用循环结构。
7.输入一个整数将其倒着输出,如54321——12345。
8.计算s=1+1/3+1/5+…+1/n,截止到1/n<10-4。
9.从键盘输入一整数n,计算1*1+2*2+...+n*n的值。
10.用 while 循环计算1+2+……+100的和。
11.用 do while循环计算1+2+……+100的和。
12.用 for 循环计算1+2+……+100的和。
13.输入一个小于等于10的整数n ,计算n!。
14.输入两个正整数m和n,计算m!+n!,m和n的值均小于10。
15.用循环语句,计算1~100之间的所有3的倍数之和。
16.用循环语句,计算100-200之间的所有7的倍数之和。
17.输出1-100之间,7的整数倍数或数字尾数为7的数字,统计出这些数字个数。
18.输入一行字符,分别统计出其中英文字母,空格,数字和其他字符的个数。
19.输入一个整数,统计它有几位数。
如输入367,则该数有3位数。
20.编写程序,输出1到50中间所有能被3整除的正整数。
21.把100~200之间不能被3整除的输出。
22.编程Y=1+3+5+7+...111。
23.编程y=1*1/2*1/3*1/4*1/5*1/6*...前十项之积。
24.编程输出九九乘法表。
25.求1到100奇数和。
26.求1到100偶数和。
27.编程求200以内所有质数(素数)。
28.从键盘输入一个整数,求该数的绝对值。
29.从键盘输入+、-、*、/中的任一个,输出对应的英文单词:plus、minus、mutiply、divide,如输入的不是这4个字符中的任一个,则输出“sorry,you are wrong”。
30.从键盘输入一个字符,判断其是否为a,r,或f,并输出相应的信息(不区分大小写)。
31.求解一元二次方程ax2+bx+c=0的跟(a不等于0),a,b,c均为实数,其值由键盘输入。
32.编一程序,对于给定的一个百分制成绩,输出用像'A','B','C','D','E'表示的等级成绩。
设:90分以上为'A',80~89分为'B',70~79分为'C',60~69分'D',60分以下为'E'。
(要求用switch语句编程)。
33.输入一个整数,判断它能否被3,5,7整除。
34.用整数1~12依次表示1~12月,由键盘输入一个月份数,输出对应的季节英文名称(12~2月为冬季;3~5月为春季;6~8月为夏季;9~11月为秋季。
要求用if嵌套实现)。
35.编写输入整数a,b,c,当a为1时显示b和c之和,a为2时显示b与c之差,a为3时显示b*c之积,a为4时取b/c之商,a为其他数值时不做任何操作的程序。
36.编写输入一个整数,将其数值按小于10,10~99,100~999,1000以上分类并显示。
37.编写输入一个整数,当为65时显示A,66时显示B,67时显示C,其他值时显示END的程序。
38.编程实现:输入4个整数,要求按由小到大输出。
39.企业发放的奖金根据利润的提成,利润I低于或等于10万元的,奖金可提10%;利润高于10万元低于20万时,低于10万的部分按10%提成,高于10万元的部分,可提成7.5%;20万元<I<=40万元时,低于20万的部分仍按上述办法,高于20万元部分按5%提成;利润超过40万元时,低于40万元的部分按上述办法,高于40万元部分按1%提成。
从键盘输入当月利润I,求应发奖金部分。
40.给出一百分制成绩,要求输出成绩等级’A’,’B’,’C’,’D’,’E’。
90分以上为’A’,80-89分为’B ’,70-79分为’C’,60-69分为’D’,60分以下为’E’。
41.给出一个不多于5位的正整数,分别打印出每一位数字。
42.从键盘输入三个正整数,判断这三个数能否构成三角形。
43.编写输入两个整数a和b,若a≥b时,求其积c并显示,若a<b时,求其商c并显示的程序。
45. 编程实现:从键盘输入三个正整数,判断它们是否构成直角三角形。
46. 编程实现:从键盘输入三个正整数,判断它们是否构成等腰三角形。
49. 从键盘输入一个整数,判断其是否素数。
50.两个乒乓球队进行比赛,各出3人。
甲队为A,B,C3人,已队为X,Y,Z3人。
已抽签决定比赛名单。
有人向队员打听比赛的名单,A说他不和X比,C说他不和X,Z比,请编程找出351. 编写程序,从键盘输入两个不等于零的正整数a,b(a<b),求它们之间的几何级数的和52. 编写程序,统计从键盘输入的字符的个数(回车换行符也是一个字符),当遇到结束标53. 编写程序,求面积在100平方米以内的半径,输出所有满足条件的半径值和圆的面积的54. 编写程序,在屏幕上输出阶梯形式的乘法口诀表。
55. 求两个正整数的最大公约数和最小公倍数。
56. 某人有5张2角和4张3角的邮票,使用这些邮票能组合出多少种不同面值的邮资。
57. 求不超过1000的回文素数。
58.自守数是指一个数的平方的尾数等于该数自身的自然数。
如:762=5776,求出2000000以内的自守数。
59. 输入自然数n,将n分解为质因子连乘的形式输出。
例如,输入756,则程序显示为60.从键盘上输入若干个学生的成绩,当成绩小于等于0时结束输入。
计算出平均成绩,并输61.编一函数,将一个字符串的字符反向输出到屏幕。
出不及格的成绩和人数。
62.例6-5 编一函数,从键盘输入一个正整数n,求n!。
63.编一函数,从键盘输入一个正整数n,求Xn64.编一函数,从键盘输入2个正整数,求最小公倍数。
65.输入1行字符(不超过80个字符)。
编一函数,统计该行字符中数字的个数。
66.输入一个5行、6列的整数数组,先以5行6列的格式输出该数组;从键盘输入一个整数,然后编一函数,查找该数是否在数组中。
67.编写程序,通过调用函数int abs_sum(int a,int b),求从键盘输入的任意3个整数的绝对值的和。
68.Fibonacci数列的组成规律为:0,1,1,2,3,5,8,13,21,…。
编写程序,求Fibonacci数列第i项的值(0≤i≤40)。
69.编写程序,通过调用函数double area(double r),计算园的面积,要求圆的半径r从键盘输入。
70.编写程序,通过调用函数double area(double r,double h),计算园柱的表面积,要求圆柱的半径r及高h的值从键盘输入。
71.编写程序,通过调用函数double area(double r,double h),计算园柱的体积,要求圆柱的半径r及高h的值从键盘输入。
72.编写一个函数,计算并返回一个整数的立方。
73.设计一个函数,交换数组a和数组b的对应元素。
75.设有两个整型数组a,b,试比较这两个数组统计出这两个数组中对应元素相等与不相等的个数。
76.编写程序,将字符串str中的所有字符k删除。
77.找出二维数组的鞍点,即该位置上的元素是该行上的最大值,是该列上的最小值。
二维数组也可能没有鞍点。
78.回文是从前向后和从后向前读起来都一样的句子。
写一个函数,判断一个英文字符串是否为回文。
80.若有说明:int a[2][3]={{1,2,3},{4,5,6}};,现要将a的行和列的元素互换后存到另一个二维数组b中,试编程。
81.求Sn=a+aa+aaa+…+aaa…a的值。
例如当a=2,n=4时,Sn=2+22+222+2222。
a和n由键盘输入。
(用函数调用实现)82.求两个正整数的最大公约数 (用函数调用实现)。
83.计算1!+2!+3!+…+n!的值,n值由键盘输入(要注意n!的有效性)。
84.编写程序,用冒泡法对20个整数排序。
85.编写程序,将一个数插入到有序的数列中去,插入后的数列仍然有序。
86.输入1行字符(不超过80个字符)。
编一函数,统计该行字符中空格的个数。
87.编一函数,连接2个字符串,输出连接后的字符串。
88.编一函数,将1个字符串复制到另1个字符串,输出字符串。
89.输入一个5行、6列的数组,先以5行6列的格式输出该数组,然后编一函数,找出该数组中值最小的元素,输出该元素及其两个下标。
90.输入1行字符(不超过80个字符)。
编一函数,统计该行字符中字母的个数。
91. 编写程序,对10个从键盘任意输入的字符排序后输出。
92.编写程序,在有序的数列中查找某数,若该数在此数列中,则输出它所在的位置,否则输出no found。
93.编写函数,从一个排好序的整型数组中删去某数。
94.数组a长度为10,保存10个整数。
试编程将数组中的元素逆置。
要求:使用自定义函数实现逆置操作。
(将数组中元素顺序颠倒)95.编程模拟字符串复制函数strcpy。
要求:不能调用系统函数,使用自定义函数实现。
96.编程模拟字符串比较函数strcmp。
要求:不能调用系统函数,使用自定义函数实现。
97.编程模拟字符串连接函数strcat。
要求:不能调用系统函数,使用自定义函数实现。
98.编程模拟字符串操作函数strupr(小写转化为大写)。
要求:不能调用系统函数,使用99.编程模拟字符串操作函数strlwr(大写转化为小写)。
要求:不能调用系统函数,使用100.从键盘输入5个整数,保存于数组中。
编程找出其中最大值和最小值,把二者位置对调,然后输出调整后的数组。
要求:使用自定义函数实现对调。
101.有一个已排序好的数组,现输入一个数,要求按原来排序规则插入到数组中。
使用103.编写一个函数,该函数可以统计一个长度为2的字符串在另一个字符串中出现的次数104.请编一个函数fun(char*s),函数的功能是把字符串中所有的字母改写成该字母的下一个字母,最后一个字母z改写成字母a:大写字母仍为大写字母,小写字母仍为小写字母,105.编写函数void fun(int x,int pp[],int*n),它的功能是:求出能整除x且不是偶数的各整数,并放在pp所指的数组中,这些除数的个数通过形参n返回。