| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1387 人关注过本帖
标题:求大神解答下,万分感谢
只看楼主 加入收藏
我是个菜鸟ii
Rank: 2
等 级:论坛游民
帖 子:11
专家分:11
注 册:2016-4-6
结帖率:60%
收藏
已结贴  问题点数:8 回复次数:2 
求大神解答下,万分感谢
/*****************************************************************************************************************************/
正整数A的“DA(为1位整数)部分”定义为由A中所有DA组成的新整数PA。例如:给定A = 3862767,DA = 6,则A的“6部分”PA是66,因为A中有2个6。

现给定A、DA、B、DB,请编写程序计算PA + PB。

输入格式:

输入在一行中依次给出A、DA、B、DB,中间以空格分隔,其中0 < A, B < 1010。

输出格式:

在一行中输出PA + PB的值。

输入样例1:
3862767 6 13530293 3
输出样例1:
399
/*/***********************************************************************************************************/
上面的是问题
这是我的程序  fun函数不知道有什么问题 看不出来
#include<stdio.h>
#include<string.h>
int fun(char *p,int n,int a)
{
    int result=0;
    int i;
    for(i=0;i<n;i++)
    {
        if(p[i]==a+'0')
        {
            result=p[i]+result*10;
        }
    }
    printf("%s\t%d\t%d\t\n",p,n,a);
    return result;
}
int main()
{

    char str1[11],str2[11];
    char pa,da;
    int sum1,sum2;
    scanf("%s,%d,%s,%d",str1,pa,str2,da);
    int len=strlen(str1);
    int len1=strlen(str2);
    sum1=fun(str1,len,pa);
    sum2=fun(str2,len1,da);
    printf("\nsum=%d\n",sum1+sum2);
    return 0;
}
搜索更多相关主题的帖子: 编写程序 正整数 
2016-05-16 20:30
qq1023569223
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:湖南科技大学
等 级:贵宾
威 望:26
帖 子:2753
专家分:13404
注 册:2010-12-22
收藏
得分:4 
程序代码:
for(i=0;i<n;i++)
{
    if(p[i]==(char)(a+(int)('0')))
    {
        result=(int)p[i]-(int)('0')+result*10;
    }
}

   唯实惟新 至诚致志
2016-05-17 09:03
grmmylbs
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:54
帖 子:1409
专家分:5845
注 册:2016-2-14
收藏
得分:4 
输入输出没按例子来:
程序代码:
#include<stdio.h>
#include<string.h>
int fun(char *p, int n, int a)
{
    int result = 0;
    int i;
    for (i = 0; i<n; i++)
    {
        if (p[i] == a + '0')
        {
            result = a + result * 10;
        }
    }
    //printf("%s\t%d\t%d\t\n", p, n, a);
    return result;
}
int main()
{

    char str1[11], str2[11];
    int pa, da;
    int sum1, sum2;
    scanf("%s %d %s %d", str1, &pa, str2, &da);//scanf读入要取地址
    int len = strlen(str1);
    int len1 = strlen(str2);
    sum1 = fun(str1, len, pa);
    sum2 = fun(str2, len1, da);
    printf("%d\n", sum1 + sum2);
    return 0;
}
2016-05-17 09:21
快速回复:求大神解答下,万分感谢
数据加载中...
 
   



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

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