1、一、程序设计 共113题
第1题 题号:319
#include "stdio.h"
void wwjt();
int fun(int m)
{
int i,k=1;
if(m<=1) k=0;
for(i=2;i 2、入pp所指一维数组中。二维
数组中的数已在主函数中赋予。
#include 3、375
功能:从键盘上输入任意实数,求出其所对应的函数值。
z=e的x次幂(x>10)
z=log(x+3) (x>-3)
z=sin(x)/((cos(x)+4)
#include 4、4题 题号:334
功能:求给定正整数n以的素数之积。(n<28)
#include 5、 规定这个整数的值不大于50。
#include 6、oid wwjt();
float fun()
{
float f1=1,f2=1,f3;
float r1=2,r2;
do
{r2=r1;
r1=f1/f2;
f3=f1+f2;
f1=f2;
f2=f3;
}while(fabs(r1-r2)>1e-4);
return r1;
}
第7题 题号:394
功能:产生20个[30,120]上的随机整数放入二维数组
a[5][4]中, 求其中的最小值。
#include "stdlib.h"
#include < 7、stdio.h>
void wwjt();
int amin(int a[5][4])
{
int i,j,s;
s=a[0][0];
for(i=0;i<5;i++)
for(j=0;j<4;j++)
if(s>a[i][j])s=a[i][j];
return(s);
}
第8题 题号:337
功能:将两个两位数的正整数a、b合并形成一个整数放在
c中。合并的方式是:将a数的十位和个位数依次放
在c数的百位和个位上, b数的十位和个位数依次放
在c数的十位和千位上。
例如:当a=4 8、5,b=12。调用该函数后,c=2415。
include 9、n%3==0&&n%5==0) return(1);
return(0);}
第10题 题号:16
功能:编写函数fun求1!+2!+3!+ …… +n!的和,在main函
数中由键盘输入n值,并输出运算结果。请编写fun
函数。
例如:若n值为5,则结果为153。
#include 10、 题号:329
功能:对某一正数的值保留2位小数,并对第三位进行四舍
五入。
#include 11、存顺序为8,6,5,4,1。要求改为:1,4,5,6,8。
#include 12、
int fun(int n)
{
int sum,i;
sum =0;
for(i=1;i<=n;i++)
{sum=sum+i;}
return(sum);
第14题 题号:507
功能:编写函数fun求一个字符串的长度,在main函数中
输入字符串,并输出其长度。
#include 13、周边元素之和,作为函数值返回。二
维数组的值在主函数中赋予。
#define M 4
#define N 5
#include 14、include 15、5是25中右侧的数,所
以5是同构数。
#include 16、 n)
{
int i,k;
for(i=n+1;;i++){
for(k=2;k 17、 10 11 2
求出的最大数为18,行坐标为2,列坐标为1。
#define N 4
#define M 3
#include 18、
Row=i;
Col=j;}
}
return(max);
第20题 题号:360
【程序设计】
功能:把20个随机数存入一个数组,然后输出该数组中的
最大值。
#include 19、
max=i;
return max;
第21题 题号:355
功能:对长度为8个字符的字符串,将8个字符按降序排列。
例如:原来的字符串为CEAedcab,排序后输出为edcbaECA。
#include 20、 21、x+x+6;
else if(x>=0 && x<10.0 && x!=2.0 && x!=3.0)
y=x*x-5*x+6;
else y=x*x-x-1;
return y;
第23题 题号:338
功能:编写程序,实现矩阵(3行3列)的转置(即行列互换)
例如:输入下面的矩阵:
100 200 300
400 500 600
700 800 900
程序输出:
100 400 700
200 500 800
22、 300 600 900
#include 23、include "stdlib.h"
#include 24、字。
例如:3+33+333+3333+33333(此时d=3,n=5),d和n在主函
数中输入。
#include 25、
功能:求n阶方阵主、副对角线上的元素之积。
------------------------------------------------*/
#define N 4
#include "stdlib.h"
#include 26、j];
return(t);
第27题 题号:42
功能:从字符串s中删除指定的字符c。
#include 27、nclude 28、un (long s,long t)
{
long sl=10;
s /= 10;
t = s % 10;
while(s > 0)
{ s = s/100;
t = s%10*sl + t;
sl = sl * 10;
----------------------
功能:编写函数求3!+6!+9!+12!+15+18!+21!。
#include 29、n;i=i+3)
{t=1;
for(j=1;j<=i;j++)
t=t*j;
s=s+t;}
return(s);
第31题 题号:397
功能:编写函数fun(str,i,n),从字符串str中删除第i个
字符开始的连续n个字符(注意:str[0]代表字符串
的第一个字符)。
#include 30、[i-1]=str[i+n-1];
i++;
}
str[i-1]='\0';
第32题 题号:29
功能:对任意输入的 x,用下式计算并输出 y 的值。
5 x<10
y= 0 x=10
-5 x>10
#include 31、 else m=-5;
return m;
或
int m;
if(n>=10)
if(n>10)
m=-5;
else m=0;
else m=5;
return m;
第33题 题号:323
功能:求1到w之间的奇数之和。(w是大于等于100小于等
于1000的整数)
#include 32、i=1;i<=w;i++)
if(i%2==1)y+=i;
return y;
第34题 题号:312
功能:调用函数fun判断一个三位数是否"水仙花数"。
在main函数中从键盘输入一个三位数,并输
出判断结果。请编写fun函数。
说明:所谓"水仙花数"是指一3位数,其各位数字立方和
等于该数本身。
例如:153是一个水仙花数,因为153=1+125+27。
#include 33、/100;sw=(n-bw*100)/10;gw=n%10;
if(n==bw*bw*bw+sw*sw*sw+gw*gw*gw) return 1;
else return 0;
第35题 题号:378
功能:编写函数用冒泡排序法对数组中的数据进行从小到
大的排序。
#include 34、if(a[j]>a[j+1])
{t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
第36题 题号:504
功能:编写程序打印如图1所示图形。
*
***
*****
*******
*****
***
*
要求:要求使用abs()。
#include 35、or(n=0;n 36、 for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
}
s=fun(a);
printf("Sum=%d\n",s);
wwjt();
}
int fun(int a[3][3])
{
int sum;
int i,j;
sum=0;
for(i=0;i<3;i+=2)
for(j=0;j<3;j++)
sum=sum+a[i][j];
return sum;
第38题 题号:382
功能:给定n个数据, 求最小值出现的位置(如果最小值
出现多次,求出第一次出现的位置即可)。
37、
#include 38、])
{
int s=0;
int i,j;
for(i=0;i 39、0,other=0;
void count(char c[])
{
答案: int i;
for(i=0;c[i]!='\0';i++)
if((c[i]>='A'&&c[i]<='Z')||(c[i]>='a'&&c[i]<='z'))
a=a+1;
else if (c[i]>='0'&&c[i]<='9')
num=num+1;
else if (c[i]==' ')
b=b+ 40、1;
else
other=other+1;
第41题 题号:387
功能:求一批数中最大值和最小值的差。
#define N 30
#include "stdlib.h"
#include 41、else if(a[i] 42、for(i=1; i 43、给定的一组数为1,3,6,9,4,23,35,67,12,88时,函
数值为3。
#include 44、矩阵:
100 200 300
400 500 600
700 800 900
程序输出:
200 400 600
800 1000 1200
1400 1600 1800
#include 45、
array[i][j]=array[i][j]*2;
第46题 题号:373
功能:用函数求fibonacci数列前n项的和。
说明:fibonacci数列为数列的第一项值为1,第二项值也
为1,从第三项开始,每一项均为其前面相邻两项
的和。
例如:当n=28时,运行结果:832039
include 46、
k=k+f;
f1=f2;
f2=f;
}
return(k);
第47题 题号:340
功能:编写一个函数,该函数可以统计一个长度为2的字符
串在另一个字符串中出现的次数。
例如:假定输入的字符串为:asdasasdfgasdaszx67asdmklo,
字符串为:as,则应输出6。
#include 47、n=0;
for(i=0;i<=strlen(str)-2;i++)
if((str[i]==substr[0])&&(str[i+1]==substr[1]))
n++;
return n;
第48题 题号:322
功能:判断一个整数w的各位数字平方之和能否被5整除,
可以被5整除则返回1,否则返回0。
#include 48、w/10;
}while(w!=0);
if(s%5==0)k=1;
else k=0;
return(k);
第50题 题号:411
功能:对任意输入的 x,用下式计算并输出 y 的值。
-1 x<0
y= 0 x=0
1 x>0
#include 49、0) m=0;
else m=1;
return m;
或
int m;
if(n>=0)
if(n>0)
m=1;
else m=0;
else m=-1;
return m;
第51题 题号:320
功能:在键盘上输入一个3行3列矩阵的各个元素的值(值
为整数),然后输出主对角线元素的积,并在fun()
函数中输出。
#include 50、
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
}
s=fun(a);
printf("Sum=%d\n",s);
wwjt();
}
int fun(int a[3][3])
{
int sum;
int i,j;
sum=1;
for(i=0;i<3;i++)
sum=sum*a[i][i];
return sum;
第52题 题号:318
/功能:输入一个字符串,过滤此串,只保留串中的字母字
符,并统计
void wwjt();
float fun(float x)
{
float y;
if (x<0 && x!=-3.0)
y=x*






