C程序设计-2022期末复习-编程题9-12

发布于 2022-06-03 11:43

程序编译环境和工具:Windows 10专业版+CFree 5.0 专业版+C编译器(文件名后缀为.c)


9、输出1001200之间的所有完全平方数(若一个数能表示成某个整数的平方的形式,则称这个数为完全平方数。)要求:定义一个函数square,判断任一给定整数n是否为完全平方数,若是返回1,否则返回0。(2)在main函数调用函数square()并输出结果,要求每行输出4个数。


解答:参考程序如下:


#include <stdio.h>

#include <math.h>

int square(int a)

{

int i;

for(i=sqrt(a*1.0)-1;i<=sqrt(a*1.0)+1;i++){

if(i*i==a) return 1;

}

return 0;

}

int main()

{

int line=0,i;

for(i=100;i<=1200;i++){

if(square(i)==1){

printf("%d ",i);

line ++;

if(line==4) {printf("\n");line = 0;}

}


10输入正整数n(2<n 1000),输出2n(包括2,n)之间素数个数。要求:(1)定义函数prime(n),功能判断n是否为素数,若是返回1,否则返回0;(2)在main函数输出结果。

<n ≤="" 1000),输出2到n(包括2,n)之间素数个数。要求:(1)定义函数prime(n),功能判断n是否为素数,若是返回1,否则返回0;(2)在main函数输出结果。<="" p="">

解答:参考程序如下:


#include <stdio.h>

int prime(int b)

{

int i;

for(i=2;i<=b/2;i++){

if(b%i==0) return 0;

}

return 1;

}

int main()

{

int i,n;

scanf("%d",&n);

for(i=2;i<=n;i++){

if(prime(i)==1){

printf("%d ",i);

}


11、从键盘输入一个字符串,将小写字母全部转换成大写字母,将大写字母全部转换成小写字母,其他字符不变。例如,原串为AbC,dE2F,则处理后的字符串为:aBc,De2f

运行示例:

 输入: AbC,dE2F

输出: aBc,De2f


解答:参考程序如下:


#include <stdio.h>

#include <string.h>

int main()

{

int i,n;

char a[50];

scanf("%s",&a);

for(i=0;i<=strlen(a);i++){

if(a[i]>='a' && a[i]<='z'){

a[i] = a[i] - ('a'-'A');

} else if(a[i]>='A' && a[i]<='Z'){

a[i] = a[i] + ('a'-'A');

}

}

printf("%s\n",a);



12输入一个正整数n0<n100,然后输入n 个整数并存入数组,再输入一个整数x,在数组查找x,若x在数组中输出在数组中的位置,若有多个输出最大的下标值;若不在数组中则输出-1

运行示例:

输入:5

     1 2 5 4 5

输出:4


解答:参考程序如下:


#include <stdio.h>

#include <string.h>

int main()

{

int i,n,x,index=-1;;

int a[50];

scanf("%d",&n);

for(i = 0; i < n; i++){

scanf("%d",&a[i]);

}

scanf("%d",&x);

for(i = 0; i <= n; i++){

if(a[i] == x){

index = i;

}

}

printf("%d\n",index);


本文来自网络或网友投稿,如有侵犯您的权益,请发邮件至:aisoutu@outlook.com 我们将第一时间删除。

相关素材