输入一个整数,要求输出所有从1到这个整数之间个位为1的素数,如果没有则输出-1(30分)
#include<stdio.h>
int main()
{
int x;
int flag=0,k=0;
int i,j;
while(scanf("%d",&x)!=EOF){
int a[x];
for( j=1;j<x;j++){
for( i=2;i<j;i++){
if(j%i==0){
break;
}
}
if(i==j&&j%10==1){
a[k++] = j;
flag++;
}
}
if(!flag)printf("-1");
else {
for(int i=0;i<k-1;i++){
printf("%d\t",a[i]);
}
printf("%d\n",a[k-1]);
}
k = 0;
flag = 0;
}
return 0;
}
任意输入两个9阶以下矩阵,要求判断第二个是否是第一个的旋转矩阵,如果是,输出旋转角度(0、90、180、270),如果不是,输出-1。
要求先输入矩阵阶数,然后输入两个矩阵,每行两个数之间可以用任意个空格分隔。行之间用回车分隔,两个矩阵间用任意的回车分隔。
#include<stdio.h>
int main()
{
int m;
int flag = 0;
while(scanf("%d",&m)!=EOF){
int a[m][m];
int b[m][m];
for(int i=0;i<m;i++)
for(int j=0;j<m;j++){
scanf("%d",&a[i][j]);
}
for(int i=0;i<m;i++)
for(int j=0;j<m;j++){
scanf("%d",&b[i][j]);
}
for(int i=0;i<m;i++)
for(int j=0;j<m;j++){
if(a[i][j]==b[i][j]){
flag++;
}
}
if(flag==m*m)printf("0\n");
flag =0;
for(int i=0;i<m;i++)
for(int j=0;j<m;j++){
if(a[i][j]==b[j][m-1-i]){
flag++;
}
}
if(flag==m*m)printf("90\n");
flag =0;
for(int i=0;i<m;i++)
for(int j=0;j<m;j++){
if(a[i][j]==b[m-1-i][m-1-j]){
flag++;
}
}
if(flag==m*m)printf("180\n");
flag =0;
for(int i=0;i<m;i++)
for(int j=0;j<m;j++){
if(a[i][j]==b[m-1-j][i]){
flag++;
}
}
if(flag==m*m)printf("270\n");
flag =0;
}
return 0;
}
从string.in中读入数据,然后用户输入一个短字符串。要求查找string.in中和短字符串的所有匹配,输出行号、匹配字符串到string.out文件中。匹配时不区分大小写,并且可以有一个用中括号表示的模式匹配。如“aa[123]bb”,就是说aa1bb、aa2bb、aa3bb都算匹配。(60分)
?