Project1

标题: 求教C语言以及电路题。。。 [打印本页]

作者: 枫起    时间: 2010-11-3 21:51
标题: 求教C语言以及电路题。。。
如题。。。解题思路是把电流源或者电压源全部换为一个统一的电源。。。。
看不清的哪个是Uab。。。



如题,程序的用处是测试该数字是不是回数。。。
现在我苦恼的是怎么实现给出的数字无数位限制?比如十位数。。。二十位数。。。

作者: 小传子    时间: 2010-11-3 21:53
高中学业水平考试物理勉强通过的只能感叹。
作者: 忍也忍    时间: 2010-11-3 21:59
枫起姐我听不懂你说了啥:'(
作者: 雷欧纳德    时间: 2010-11-3 22:13
请用while循环
作者: david50407    时间: 2010-11-3 22:14
不要当成数字
当成char[]字符串就方便多了
作者: gghg1989    时间: 2010-11-3 23:17
提示: 作者被禁止或删除 内容自动屏蔽
作者: 枫起    时间: 2010-11-4 11:46
…求详细
作者: 精灵使者    时间: 2010-11-4 12:24
第一题大概我知道……Uab就是图示中a点和b点的电压么。
作者: DeathKing    时间: 2010-11-4 13:02
回文数是一个指定长度的还是可变的?
作者: 枫起    时间: 2010-11-4 16:22
指的是由你键入的数字
作者: gghg1989    时间: 2010-11-5 14:45
提示: 作者被禁止或删除 内容自动屏蔽
作者: david50407    时间: 2010-11-5 18:16

  1. #include <stdio.h>
  2. #define BUF 500
  3. char input[BUF+1];

  4. int main(void)
  5. {
  6.     while (scanf("%s", input) != EOF)
  7.     {
  8.         int len = 0, i = 0;
  9.         char flag = 0;
  10.         while (input[len++] != "\0"); /* Get length of the number(string) */
  11.         for (i = 0; i <= len - i - 1; ++i)
  12.             if (input[i] != input[len - i - 1])
  13.             {
  14.                 printf("Not a hui wen\n");
  15.                 flag |= 1;
  16.                 break;
  17.             }
  18.         if (!flag)
  19.             printf("Hui wen\n");
  20.     }
  21. }
复制代码

作者: 枫起    时间: 2010-11-7 12:04
求附上解释…
作者: david50407    时间: 2010-11-7 12:13

  1. #include <stdio.h>
  2. #define BUF 500
  3. char input[BUF+1];

  4. int main(void)
  5. {
  6.     while (scanf("%s", input) != EOF) /* 循环: 扫入字符串 */
  7.     {
  8.         int len = 0, i = 0;
  9.         char flag = 0; /* 回文记号 0: 回文 1: 非回文 */
  10.         while (input[len++] != "\0"); /* 求出字符串长度 */
  11.         for (i = 0; i <= len - i - 1; ++i) /* 回文比对 只比对到中间 */
  12.             if (input[i] != input[len - i - 1]) /* 非回文 */
  13.             {
  14.                 printf("Not a hui wen\n");
  15.                 flag |= 1;
  16.                 break;
  17.             }
  18.         if (!flag) /* 回文 */
  19.             printf("Hui wen\n");
  20.     }
  21. }
复制代码

作者: 纸飞机哟    时间: 2010-11-7 12:22
这是物理啊= =
物理什么的最讨厌了~~
作者: graykid    时间: 2010-11-7 12:25
请教一下电工 保证一天学到的东西比在学校一年学的还多
作者: woshinst    时间: 2010-11-7 12:33
......春哥表示完全看不懂
作者: 做游戏的新手    时间: 2010-11-7 15:15
用char读入数字即可
作者: 做游戏的新手    时间: 2010-11-7 15:17
var s:ansistring;
begin
readln(s);
  for i:=1 to length(s) div 2 do
        if s[i]<>s[length(s)-i+1] then begin
            writeln('No!');
            halt;
        end;
end;
writeln('yes');
end.
作者: david50407    时间: 2010-11-8 20:40

  1. #include <stdio.h>
  2. #define BUF 500
  3. char input[BUF+1]; /* 宣告字符串 */
  4. /* 因为C语言中没有string类型 须以char(字符)类型宣告数组 */

  5. int main(void)
  6. {
  7.     while (scanf("%s", input) != EOF) /* 循环: 扫入字符串 將輸入的字符一一掃入input數組 */
  8.     {
  9.         int len = 0, i = 0;
  10.         char flag = 0; /* 回文旗标 0: 回文 1: 非回文 */
  11.         while (input[len++] != "\0"); /* 求出字符串长度 因为char数组末端会放置'\0' 字符 以表示字符已结束 故以此为依据找出长度 */
  12.         for (i = 0; i <= len - i - 1; ++i) /* 回文比对 只比对到中间 */
  13.             if (input[i] != input[len - i - 1]) /* 非回文 */
  14.             {
  15.                 printf("Not a hui wen\n");
  16.                 flag |= 1; /* 设置旗标为非回文 */
  17.                 break;
  18.             }
  19.         if (!flag) /* 若回文 */
  20.             printf("Hui wen\n");
  21.     }
  22. }
复制代码
为啥用字符而不用整数值呢?
因为整数值(int)有长度的限制
导致能读入的数字有大小限制

如果把每个数字都当成字符
就能自由的控制长度(也比较符合回文这关于语文的嘛~~)

不懂可以多问~~
作者: 逸豫    时间: 2010-11-9 21:17
本帖最后由 逸豫 于 2010-11-9 21:18 编辑
  1. #include<stdio.h>
  2. #define MAX 101
  3. int check(long n)
  4. {
  5.         int a[MAX],i=0,w;
  6.         while(n>=10)
  7.         {
  8.                 i++;
  9.                 a[i] = n % 10;
  10.                 n /= 10;
  11.         }
  12.         i++;
  13.         a[i] = n;
  14.         w = i;
  15.         for(i = 1;i<=w/2;i++)
  16.                 if(a[i] != a[w-i+1])
  17.                         return 0;
  18.         return 1;
  19. }
  20. main()
  21. {
  22.         int result;
  23.         long num;
  24.         printf("Input Number:");
  25.         scanf("%ld",&num);
  26.         result = check(num);
  27.         if(result == 1)
  28.                 printf("Yes\n");
  29.         else
  30.                 printf("No\n");
  31.         system("pause");
  32. }
复制代码
电路题无奈……
这是脑残的数值版- -
作者: xkaying    时间: 2010-11-9 21:19
提示: 作者被禁止或删除 内容自动屏蔽




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1