L减减丶


私信TA

用户名:1392788316

访问量:7560

签 名:

等  级
排  名 7564
经  验 1303
参赛次数 0
文章发表 1
年  龄 0
在职情况 学生
学  校 武汉轻工大学
专  业

  自我简介:

解题思路:


鉴于很多题解没有严格按题目要求通过数组、函数来求解,我便来介绍一个用数组求解此题的方法;


对于数据的处理,我们最容易想到的就是通过数组来求解,而在本题中,题目要求我们输入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分

49 人评分

  评论区

请问 为什么用int输入输出不可以嘞
2023-02-01 21:58:00
#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]);
	}
}
直接无脑
2022-05-11 10:27:52
#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;
}
2022-03-28 19:43:08
#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);

}
2022-03-14 19:34:01
#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;
}
2022-01-06 22:08:42
#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;
}
2021-12-10 12:16:30
#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]);
    }
}
2021-12-10 12:15:53
#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],目前来说我感觉我写的这种最简单
2021-11-16 11:28:38