1. 一个四位数具有以下特点:(1)前两位相同,后两位相同,但与前两位不同;(2)这个四位数正好是某位整数的平方;编程求解该四位数字是?
#include <stdio.h>
int main()
{
int x,a,b,c,d,i;
for (x=1000;x<9999;x++)
{
a=x/1000;
b=x/100%10;
c=x/10%10;
d=x%10;
if(a==b && c==d && a!=c)
{
for(i=32;i<99;i++)
{
if(x==i*i)
{
printf("这个数字是:");
printf("%d ",x);
printf("\n");
}
}
}
}
return 0;
}
2. 请编写函数fun,其功能是:找出2×M整型二维数组中最大元素的值,并将此值返回调用函数。
#include <stdio.h>
#define M 4
int fun (int a[][M])
{
int i,j,m;
m=a[0][0];
for(i=0;i<2;i++)
{
for(j=0;j<M;j++)
{
if(a[i][j]>m)
{
m=a[i][j];
}
}
}
return m;
}
int main( )
{ int arr[2][M]={5,8,3,45,76,-4,12,82};
printf("max =%d\n", fun(arr));
return 0 ;
}
3. 从键盘中输入字符串存放至数组中,然后将此字符串中的内容颠倒保存至原数组,再输出。其中字符串长度不超过100个字符。
#include<stdio.h>
int main()
{
char s[100];//可存放一百个字符串的数组
int len ,i;
printf("请输入字符:\n");
gets(s);//输入函数
for(i=0;s[i];i++)//遍历数组
len=i;
printf("颠倒后的字符:\n");
for(i=len;i>=0;i--)
printf("%c",s[i]);
4. 编写一个程序,比较两个字符串str1和str2的大小,再计算字符串str1和str2的实际长度。输出这个字符串比较大小的结果以及它们各自的长度。
#include<stdio.h>
#define MAX 100//定义最大上限
int jscd(char const*str)//计算长度(const修饰变量,称为常变量)
{
int c;
char const*tmp=str;
while(*str!='\0')
{
str++;
c=str-tmp;
}
return c;//指针减指针就是元素个数
}
int main()
{
int a,b;
char str1[MAX];
char str2[MAX];
printf("请输入字符串str1和str2:\n");
scanf("%s",&str1);
scanf("%s",&str2);
a=jscd(str1);
b=jscd(str2);
if(a<b)
{
printf("str1<str2");
printf("\n");
}
else
{
printf("str1>str2");
printf("\n");
}
printf("str1的实际长度是:%d",a);
printf("\n");
printf("str2的实际长度是:%d",b);
printf("\n");
return 0;
}