C语言程序设计卷子。各位大哥帮帮忙,我只有120分钟。
发布网友
发布时间:2022-05-05 08:21
我来回答
共3个回答
热心网友
时间:2023-10-24 08:50
baadd,abdad
第一题
#include<stdio.h>
int main()
{
char szTest[100];
int i=0;
int count[5]={0};//count[0]数字、count[1]大写字母、count[2]小写字母、count[3]空格、count[4]其它字符,初始化为0
scanf("%s",&szTest);
while(szTest[i]!='\0')
{
if(szTest[i]>='0' && szTest[i]<='9')
count[0]++;
else if(szTest[i]>='A' && szTest[i]<='Z')
count[1]++;
else if(szTest[i]>='a' && szTest[i]<='z')
count[2]++;
else if(szTest[i]==' ')
count[3]++;
else
count[4]++;
i++;
}
printf("数字%d 大写字母%d 小写字母%d 空格%d 其它字符%d \n",count[0],count[1],count[2],count[3],count[4]);
return 0;
}
第二题
long f()
{
int i;
long sum;
sum = 0;
for (i=1 ; i<=30 ; i ++)
{
sum += i*(i+1)*(i+2);
}
return sum;
}
第三题
#include<iostream>using namespace std;
main(){
int i,j;
for(i=7;i>=1;i--)
{for(j=4;j>=1;j--)
{
printf(j);
printf(\n);
}}
第四题
long t()
{
int i;
long sum;
long num1;
long num2;
long num;
sum = 0;
for (i=1 ; i<=20 ; i ++)
{
sum += i*(i+1)*(i+2);
}
for(i=1;i=19;i++)
{
num1 += i*(i+1)*(i+2);
}
for(i=1;i=20;i++)
{
num2 += i*(i+1)*(i+2);
}
num=num2-num1;
return num;
}
第五题
#include "stdio.h"
#define N 10
main()
{
int i,j,k,a[N],t;
printf("请输入100个整数:\n");
for(i=0;i<N;i++)
scanf("%d",&a[i]);
for(i=0;i<N;i++)
for(j=i+1;j<N;j++)
if(a[i]<a[j])
{t=a[i];a[i]=a[j];a[j]=t;}
for(k=0;a[k]>0;k++);
for(i=0;i<k;i++)
for(j=i+1;j<k;j++)
if(a[i]>a[j])
{t=a[i];a[i]=a[j];a[j]=t;}
for(i=0;i<N;i++)
printf("%d ",a[i]);
}
指针与C语言
大家都认为,c语言之所以强大,以及其自由性,很大部分体现在其灵活的指针运用上。因此,说指针是c语言的灵魂,一点都不为过。同时,这种说法也让很多人产生误解,似乎只有c语言的指针才能算指针。basic不支持指针,在此不论。其实,pascal语言本身也是支持指针的。从最初的pascal发展至今的object pascal,可以说在指针运用上,丝毫不会逊色于c语言的指针。
C语言的数据文件:
C语言中可以按文本(ASCII文件)或者二进制方式处理数据文件,文本文件通常用于人们的直接阅读,二进制文件则用于保存程序在运行过程中用到的二进制数据,而且对二进制文件的处理效率也比对ASCII文件要高。
预处理指令:
#空指令,无任何效果
#include包含一个源代码文件
#define定义宏
#undef取消已定义的宏
#if如果给定条件为真,则编译下面代码
#ifdef如果宏已经定义,则编译下面代码
#ifndef如果宏没有定义,则编译下面代码
#elif如果前面的#if给定条件不为真,当前条件为真,则编译下面代码
#endif结束一个#if……#else条件编译块
#error停止编译并显示错误信息
switch语句的语法如下(switch,case和default是关键字):
switch ( controllingExpression )
{
case constantExpression :
statements
break;
case constantExpression :
statements
break;
...
default :
statements
break;
}
热心网友
时间:2023-10-24 08:50
1L给的程序是 C++的 不是C的 选择题也不太对吧 switch 中不能用 continue,我刚试过的
还有我选择踢 基本都是 编译 运行的 输出的结果
程序题 全部编译运行过
一、单项选择题
1.B 2.B 3.C 4.C 5.B 6.D 7.D 8.D 9.D 10.B
二、简答题
1.
#include<>和 #include""
#include<>是在系统默认的头文件库中搜索,
#include"" 是在用户的目录下搜索
2.
一种用于储存变量地址的数据类型
3.
C语言中可以按文本(ASCII文件)或者二进制方式处理数据文件,文本文件通常用于人们的直接阅读,二进制文件则用于保存程序在运行过程中用到的二进制数据,而且对二进制文件的处理效率也比对ASCII文件要高
4.
文件包含指令(#include)
宏定义指令(#define)
条件编译指令(#ifdef、#endif、#elif、#if等)
宏作用域结束指令(#undef)
定义行号指令(#line)
产生错误信息指令(#error)
5.
switch(表达式)
{
case 值1:表达式1;
case 值2:表达式2;
case 值3:表达式3;
...
case 值n:表达式n;
default:表达式n+1;
}
执行过程 如果是m(1<=m<=n+1),则从m对应的表达式m开始,
执行表达式m,表达式m+1,表达式m+2,...表达式n,表达式n+1
6.略
三、编程题
1.
#include<stdio.h>
#efine n 30
int main()
{
char ch;
int cnt=0;
scanf("%c",&ch);
while(ch!='\n') {
if(ch<='9'&&ch>='0')
cnt++;
scanf("%c",&ch);
}
printf("%d\n",cnt);
return 0;
}
2.
#include<stdio.h>
#define N 30
int main()
{
int i;
double sum=0;
for(i=1;i<=N;i++){
sum+=(double)1/(i*(i+1));
printf("%d__%lf\t",i,sum);
}
return 0;
}
3.
#include<stdio.h>
int main()
{
int i,j;
for(i=0;i<4;i++){
for(j=0;j<i;j++)
printf(" ");
for(j=1;j<8-i*2;j++){
printf("%d",j);
}
printf("\n",j);
}
return 0;
}
4.
#include<stdio.h>
#define N 20
int main()
{
int i;
long sum=0;
for(i=1;i<=N;i++){
sum+=i*(i+1)*(i+2);
}
printf("%ld\t%ld",sum,(i-1)*i*(i+1));
return 0;
}
5.
#include<stdio.h>
#define N 100
int main()
{
int i,j,k;
float num[N],tmp;
for(i=0;i<N;i++){
scanf("%f",&num[i]);
}
for(i=0;i<N-1;i++)
for(i=i;i<N;i++)
if(num[i]<num[j]){
tmp=num[i];
num[i]=num[j];
num[j]=tmp;
}
for(k=0;k<N||num[k]>0;k++);
for(i=0;i<k-1;i++)
for(i=i;i<k;i++)
if(num[i]>num[j]){
tmp=num[i];
num[i]=num[j];
num[j]=tmp;
}
return 0;
}
6.略
热心网友
时间:2023-10-24 08:51
第四题应该选 C,第五题应该选 B,第六题应该选 D,第七题应该选 D,第九题应该选 D,第十题应该选 A