刘汝佳第一版算法竞赛入门经典-第三章数组和字符串-下
分类:
文章
•
2024-07-21 23:32:04
- 习题3-5旋转
- 输入一个n*n的字符矩阵,向左旋转90度输出.
- #include <stdio.h>
- int main()
- {
- int N;
- int i, j;
- printf("请输入N\n");
- scanf("%d",&N);
- printf("请输入N*N矩阵\n");
- char m[N][N];
- for(i=0; i<N; i++)
- scanf("%s", &m[i]);
- printf("\n");
- for(i=0; i<N; i++)
- {
- for(j=0; j<N; j++)
- {
- printf("%c ", m[j][N-1-i]);
- }
- printf("\n");
- }
- return 0;
- }

- 习题3-6,3-7进制转换(十进制和n进制互转(2<=n<=10))略
- 习题3-8手机键盘
- 输入一个由小写字母组成的英文单词,输出用手机的默认英文输入法的敲打序列.例如要打pig,需要按一次p,三次i,(稍作停顿后)1次i记为p1i3g1
- #include<stdio.h>
- #include<ctype.h>
- int main()
- {
- int i,j,k,n;
- int len;
- char m[8][4]={
- {'a','b','c','0'},
- {'d','e','f','0'},
- {'g','h','i','0'},
- {'j','k','l','0'},
- {'m','n','o','0'},
- {'p','q','r','s'},
- {'t','u','v','0'},
- {'w','x','y','z'},
- };
- char str[20];
- gets(str);
- // puts(str);
- for(n=0; n<20; n++)
- {
- if(isalpha(str[n]))
- {
- len++;
- }
- }
- // printf("len=%d\n",len);
- // printf("%c\n",str[0]);//测试
- // printf("%c\n",str[1]);
- // printf("%c\n",str[2]);
- for(k=0;k<len;k++)
- for(i=0; i<8; i++)//
- {
- for(j=0;j<4;j++)//
- {
- if(m[i][j]==str[k])
- {
- printf("%c%d",str[k],j+1);
- }
- }
- }
- return 0;
- }

- 未完持续......