解题思路:其实重点就再最后一条printf语句中的取余哪里,其余的读入数据就不多说了,通过for循环读入即可;来看一下这个运算符 % 的魅力吧。
int a[10]={1,2,3,4,5,6,7,8,9,0};
对于上面的数组如何让它循环右移3位呢;通常的做法的是再创建一个数组;把后3位先读入新数组中,接着把原来数组中的0到len-3位置上的数据依次写入到新数组中(接着上一次 的末尾)。
还有一种的简便快捷的方法;那就是 利用 %(取余) 运算符来完成这个任务了;
我可以直接输出结果了!!!
for(int i =0; i < 10; ++i)
{
printf("%d ", a[(i+10-3)%10]);
}
就是上面的语句了;来解释一下:这是循环右移的,i=0时,i+10-3=7,a[7%10]=a[7]就是开始输出的位置了,或许有人说到数组末尾怎末办,当i=3时,i+10-3=10 这时候a[10]是不存在的,别忘了还有取余,a[10%10]=a[0];这样就自动的跑到数组的开始位置了,来看一下最后一个元素:i=10时,i+10-3=17 a[17%10]=a[7] 即最后一个元素就是a[7]了, 然后退出循环。
循环左移3位的就只用把 a[(i+10-3)%10]改为a[(i+3)%10]; 和上面右移的逻辑时一样的。
注意事项:
不懂得可以留言;
参考代码:
#include <cstdio> int main() { int s[1000], n, m; scanf("%d", &n); for(int i = 0; i < n; ++i) { scanf("%d", &s[i]); } scanf("%d", &m); for(int i = 0; i < n; ++i) { printf("%d ", s[(i+n-m)%n]); } return 0; }
0.0分
28 人评分
#include <stdio.h> #include <string.h> int main() { int n; scanf("%d", &n); char arr[100] = { 0 }; scanf("%s", arr); int m = 0; scanf("%d", &m); for (int i = m-1 ; i < n; i++) { printf("%c", arr[i]); } return 0; }
#include<stdio.h> int main() { int n,i; scanf("%d",&n); char a[n]; for(i=0;i<n;i++) { scanf("%c",&a[i]); } int k; scanf("%d",&k); char b[k]; int j; for(i=k-1;i<n;i++) { for(j=0;j<k;j++) { b[j]=a[i]; break; } } printf("%s",b); return 0; }
世 2021-11-27 21:09:22 |
大家可以指导一下这个哪里错了ma?
楼主表达的是这个意思吗? #include <stdio.h> int main() { char s[1000]; int n, m,i; scanf("%d", &n); getchar();//去回车 for(i = 0; i < n; i++) { scanf("%c", &s[i]); } getchar();//去回车 scanf("%d", &m); for(i =m-1; i < n; i++) { printf("%c", s[i]); } return 0; }
明白楼主意思了,是这样 #include<stdio.h> int main(){ int m,n,i; char a[1000]; char b[1000]; scanf("%d",&n); for(i=0;i<=n;i++){ scanf("%c",&a[i]); } scanf("%d",&m); for(i=0;i<=n-m;i++){ b[i]=a[i+m]; } printf("%s",b); return 0; }
这是1046的题解吧,放错地方了吧
这个 。。 完全看不懂 我的编译器表示 无法识别
学到了个新东西,不过与题目要求不符啊
【明明的随机数】 (C语言代码)浏览:1734 |
C语言程序设计教程(第三版)课后习题8.9 (C++代码)浏览:919 |
C语言程序设计教程(第三版)课后习题9.2 (C语言代码)浏览:741 |
母牛的故事 (C语言代码)浏览:712 |
求圆的面积 (C语言代码)浏览:1366 |
C语言考试练习题_排列 (C语言代码)浏览:767 |
A+B for Input-Output Practice (III) (C语言代码)浏览:592 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:1015 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:644 |
WU-printf基础练习2 (C++代码)浏览:2061 |