C程序设计-2022期末复习-编程题9-12
发布于 2022-06-03 11:43
程序编译环境和工具:Windows 10专业版+CFree 5.0 专业版+C编译器(文件名后缀为.c)
9、输出100到1200之间的所有完全平方数(若一个数能表示成某个整数的平方的形式,则称这个数为完全平方数。)要求:定义一个函数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),输出2到n(包括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、输入一个正整数n(0<n≤100),然后输入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 我们将第一时间删除。
相关素材