| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2108 人关注过本帖
标题:这个assic码的数组可看一下
只看楼主 加入收藏
梦想远航lyz
Rank: 2
等 级:论坛游民
威 望:1
帖 子:39
专家分:76
注 册:2017-10-23
结帖率:66.67%
收藏
已结贴  问题点数:20 回复次数:12 
这个assic码的数组可看一下
#include <stdio.h>

int main()
{
    int i,j;
    char a[5] = {'1','2','3','4'};
    char b[4] = "1234";
    int a1[] = {1,2,3,4};
    int b1[] = {'1','2','3','4'};
   
    printf("%s\n",a);
    printf("%s\n",b);
    for(i = 0;i < 4;i++)
    {
        printf("%d\n",a1[i]);
    }
    for(j = 0;j < 4;j++)
    {
        printf("%d\n",b1[j]);
    }

    return 0;
}
搜索更多相关主题的帖子: 数组 int char printf for 
2018-01-17 21:47
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10551
专家分:42996
注 册:2014-5-20
收藏
得分:20 
作字符串要以'\0'结束
    char a[5] = {'1','2','3','4','\0'}; 自己加上'\0'
    char b[5] = "1234"; 需要5个字节,编译器会自动加上'\0'
2018-01-18 05:46
梦想远航lyz
Rank: 2
等 级:论坛游民
威 望:1
帖 子:39
专家分:76
注 册:2017-10-23
收藏
得分:0 
回复 2楼 吹水佬
char a[5] = {'1','2','3','4'};
char b[4] = "1234";
这两种写法都可以。代码是没问题的,下面这个代码执行有问题,你帮我看一下

/*
循环从键盘上输入一个小写字符%c,要求输入它对应的大写字符%c,要求输入它对应的大写字符%c
若输入的不是小写字符,则显示它对应的十六进制的ascii码值
*/
#include <stdio.h>

int main()
{
    while(1)
    {
        //输入一个字符
        char c,a,z;
        scanf("%c",&c);
        if(c <= 'z' && c >= 'a')
        {
            printf("%c\n",c-32);
            //printf("%d\n",c-32);
            //printf("%d\n",__LINE__);
        }
        else
        {
            //printf("%d\n",__LINE__);
            printf("%x\n",c);
            //printf("%d\n",__LINE__);
        }
        
        printf("\n");
        //printf("%d\n",c);        
    }
        
    return 0;
}
2018-01-21 21:29
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10551
专家分:42996
注 册:2014-5-20
收藏
得分:0 
以下是引用梦想远航lyz在2018-1-21 21:29:35的发言:

char a[5] = {'1','2','3','4'};
char b[4] = "1234";
这两种写法都可以。代码是没问题的,

看看下面,问题是把a、b当作字符串使用了:
    printf("%s\n",a);
    printf("%s\n",b);
这两种写法都可以吗,代码没问题?
2018-01-21 21:41
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10551
专家分:42996
注 册:2014-5-20
收藏
得分:0 
以下是引用梦想远航lyz在2018-1-21 21:29:35的发言:
下面这个代码执行有问题,你帮我看一下

/*
循环从键盘上输入一个小写字符%c,要求输入它对应的大写字符%c,要求输入它对应的大写字符%c
若输入的不是小写字符,则显示它对应的十六进制的ascii码值
*/
#include <stdio.h>

int main()
{
    while(1)
    {
        //输入一个字符
        char c,a,z;
        scanf("%c",&c);
        if(c <= 'z' && c >= 'a')
        {
            printf("%c\n",c-32);
            //printf("%d\n",c-32);
            //printf("%d\n",__LINE__);
        }
        else
        {
            //printf("%d\n",__LINE__);
            printf("%x\n",c);
            //printf("%d\n",__LINE__);
        }
        
        printf("\n");
        //printf("%d\n",c);        
    }
        
    return 0;
}

#include <stdio.h>
int main()
{
    unsigned char c;
    while(1)
    {
        //输入一个字符
        scanf(" %c",&c);
        if(c <= 'z' && c >= 'a')
        {
            printf("%c\n",c-32);
        }
        else
        {
            printf("%02x\n",c);
        }
        printf("\n");
    }
    return 0;
}
2018-01-21 21:53
梦想远航lyz
Rank: 2
等 级:论坛游民
威 望:1
帖 子:39
专家分:76
注 册:2017-10-23
收藏
得分:0 
回复 4楼 吹水佬
肯定啊,定义的时候本来就是字符串数组
2018-01-21 22:12
梦想远航lyz
Rank: 2
等 级:论坛游民
威 望:1
帖 子:39
专家分:76
注 册:2017-10-23
收藏
得分:0 
回复 5楼 吹水佬
楼主,你回复的时候能不能执行一下代码,你改的代码问题一样存在的。根本问题没解决,原因是:输入的时候敲了回车键,等于多输入了一个字符(回车也等于一个字符)
2018-01-21 22:15
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10551
专家分:42996
注 册:2014-5-20
收藏
得分:0 
以下是引用梦想远航lyz在2018-1-21 22:12:18的发言:

肯定啊,定义的时候本来就是字符串数组

定义的时候本来就是字符串数组,为何存放的不是字符串?
2018-01-21 22:18
梦想远航lyz
Rank: 2
等 级:论坛游民
威 望:1
帖 子:39
专家分:76
注 册:2017-10-23
收藏
得分:0 
回复 8楼 吹水佬
字符串数组的定义:
char a[5] = {'1','2','3','4'};
char b[4] = "1234";
这两种都合法好吗,而且打印printf("%s\n",a);//a代表数组首地址
2018-01-21 22:21
吹水佬
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:451
帖 子:10551
专家分:42996
注 册:2014-5-20
收藏
得分:0 
以下是引用梦想远航lyz在2018-1-21 22:15:43的发言:

楼主,你回复的时候能不能执行一下代码,你改的代码问题一样存在的。根本问题没解决,原因是:输入的时候敲了回车键,等于多输入了一个字符(回车也等于一个字符)

输入的回车肯定没被当作字符处理的,有测试过改后的代码吗?
具体说说还存在什么问题,或者给个运行结果截图看看。
2018-01-21 22:22
快速回复:这个assic码的数组可看一下
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018047 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved