解题思路:
鉴于很多题解没有严格按题目要求通过数组、函数来求解,我便来介绍一个用数组求解此题的方法;
对于数据的处理,我们最容易想到的就是通过数组来求解,而在本题中,题目要求我们输入4个连续的不带空格的数,那么我们怎么不带空格让其赋予到一个数组里的4个不同的元素中呢?很明显,“int”"double" 型数组都没有办法实现我们的目标,我们便可以采用字符型数组(“char”)来解决我们的问题。(没想到吧,字符型数组在处理纯数字时也能派上用场)
注意事项:
输入输出时记得用%c!
参考代码:
#include <stdio.h> void kongge (char a[4]); int main() { char a[4]; int i; for(i=0;i<4;i++) scanf("%c",&a[i]); kongge(a); return 0; } void kongge (char a[4]) { int i,t=0; for(i=0;i<4;i++){ if(t!=0) //用来输出空格 printf(" "); t++; printf("%c",a[i]); } }
0.0分
41 人评分
#include<stdio.h> #define N 4 int main(){ int i; char a[N]; for(i=0;i<N;i++){ scanf("%c",&a[i]); } for(i=0;i<N;i++){ printf("%c ",a[i]); } } 直接无脑
#include<stdio.h> #include<string.h> void fun(char a[],char b[]) { int i,l,j=0; l=strlen(a); for(i=0;i<l;i++) { if(a[i]!='\0')//判断是否循环到数组a[]的最后结尾。 { b[j]=a[i]; j++; b[j++]=' ';//给b[]增加的一位上加入空格。 } } } int main() { char a[1000],b[1000]; gets(a); fun(a,b); puts(b); return 0; }
#include <stdio.h> void num(int a); int main() { int a; scanf("%d",&a); num(a); return 0; } void num(int a) { int n; int m=a; int i=1000; do{ n = m/i; m = m%i; printf("%d ",n); i = i/10; }while(i>0); }
#include<stdio.h> #include<string.h> int main() { char a[100]; gets(a); int m,i; m=strlen(a); for(i=0;i<m;i++) {printf("%c ",a[i]);} return 0; }
lcn 2022-03-19 15:28:41 |
想问一下为什么删掉计算字符串这个函数然后提交是错误的呢#include<stdio.h> int main() { char a[4]; gets(a); int i; for(i=0;i<4;i++) {printf("%c ",a[i]);} return 0; }
#include<stdio.h> void shuchu(char a[4]) { int b=0; for (b;b<4;b++) { if(a[b]=='\0') { break; } printf("%c ",a[b]); } } int main() { char a[4]; gets(a); shuchu(a); return 0; }
#include <stdio.h> void kongge (char a[4]); int main() { char a[4]; int i; for(i=0;i<4;i++) scanf("%c",&a[i]); kongge(a); return 0; } void kongge (char a[4]) { int i,t=0; for(i=0;i<4;i++){ if(t!=0) //用来输出空格 printf(" "); t++; printf("%c",a[i]); } }
#include<stdio.h> int chu(char a[5]); int main() { char a[5]; gets(a); chu(a); return 0; } int chu(char a[5]){ for(int i=0;i<3;i++){ printf("%c ",a[i]); } printf("%c\n",a[3]); return 0; } 题目只要求4位数,如果数字多了还可以将a[5]换成a[1000],目前来说我感觉我写的这种最简单
#include "stdio.h" #include "string.h" void main() { int i,len; char a[1000],b[1000]; gets(a); len = strlen(a); for(i = 0;i<=len-1;i++) { b[i+i] = a[i]; b[2*i-1] = ' '; } b[i+i-1] = '\0'; puts(b); }
An 2021-12-23 09:50:49 |
#include<stdio.h> void k(int a); int main() { int a; scanf("%d",&a); k(a); } void k(int x) { int b[4],i; for(i=0;i<4;i++) { b[i]=x%10; x=x/10; } for(i=3;i>=0;i--) printf("%d ",b[i]); }
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:687 |
C语言程序设计教程(第三版)课后习题11.12 (C语言代码)浏览:719 |
程序员的表白 (C语言代码)浏览:1459 |
程序员的表白 (C语言代码)浏览:1319 |
C语言程序设计教程(第三版)课后习题11.8 (C语言代码)浏览:606 |
简单的a+b (C语言代码)浏览:667 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:544 |
【出圈】 (C语言代码)浏览:553 |
数组输出 (C语言代码)错误???浏览:561 |
C语言程序设计教程(第三版)课后习题7.2 (C语言代码)浏览:661 |
徘徊的老猿 2022-05-13 15:29:59 |
本来没啥的,直接无脑几个字笑死了,哈哈哈哈
郁猪猪 2022-07-12 15:11:40 |
哈哈哈哈哈 但是这样最后一个字母后边会带空格,但是不重要,无脑上
一级抠脚老汉 2022-09-10 19:35:46 |
自定义函数喔,没看题